crossplatform.ru

Здравствуйте, гость ( Вход | Регистрация )

2 страниц V   1 2 >  
Ответить в данную темуНачать новую тему
mishaga
  опции профиля:
сообщение 15.2.2009, 5:44
Сообщение #1


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 15.2.2009
Пользователь №: 552

Спасибо сказали: 0 раз(а)




Репутация:   0  


Мне нужно, чтобы программа стартовала вместе с ОС...
Как я понимаю, нужно сделать примерно так:

#ifdef Q_OS_WIN
  // тут код для Винды
#endif

#ifdef Q_OS_MAC
  // тут код для Мака
#endif

#ifdef Q_OS_X11
  // тут код для nix'ов
#endif


Если это единственный способ, то для Винды я ещё смогу написать через QSettings. Для Линуксов вряд ли. А вот для Маков ваще не в курсе как... Не сидел даже ни разу под Маком...
Поделитесь кодяном, у кого кокие догадки есть...

И если это не единственный способ, тогда скажите, какие ещё есть! =)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 15.2.2009, 12:44
Сообщение #2


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(mishaga @ 15.2.2009, 5:44) *
Для Линуксов вряд ли.
Можно попробовать устанавливать демона, а он уже в свою очередь будет стартовать твое приложение.
С маком не работал, но так как он производная от FreeBsd, то думаю там тоже есть возможность создания и запуска демонов.
:)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 15.2.2009, 13:37
Сообщение #3


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(mishaga @ 15.2.2009, 8:44) *
И если это не единственный способ, тогда скажите, какие ещё есть! =)
в комерческой версии доступен пакет Qt Solution, а в нем QServise (наследник QApplication), с помощью него на виндовозе можно сделать приложение-службу, а на *nix приложение-демон.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
mishaga
  опции профиля:
сообщение 16.2.2009, 7:13
Сообщение #4


Студент
*

Группа: Новичок
Сообщений: 14
Регистрация: 15.2.2009
Пользователь №: 552

Спасибо сказали: 0 раз(а)




Репутация:   0  


Хех... Это круто, что есть такой пакет... Где б мне раздобыть теперь этот Qt Solution...
У кого есть, поделитесь, плиз!

Туплютуплю!
Скачал пакент, попытаюсь установить =)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Litkevich Yuriy
  опции профиля:
сообщение 16.2.2009, 7:42
Сообщение #5


разработчик РЭА
*******

Группа: Сомодератор
Сообщений: 9669
Регистрация: 9.1.2008
Из: Тюмень
Пользователь №: 64

Спасибо сказали: 807 раз(а)




Репутация:   94  


Цитата(mishaga @ 16.2.2009, 10:13) *
Скачал пакент, попытаюсь установить =)
а его и устанавливать не надо, распаковывай и вперед:
Qt Solutions\utilites\qtservice\examples\
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 16.2.2009, 19:50
Сообщение #6


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


А нах такие заморочки с демонами??? В винде делаешь так:
QSettings* setting=new QSettings("HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Run",
                                                  QSettings::NativeFormat);
setting->setValue("APP_NAME",QDir::toNativeSeparators(QCoreApplication::applicationFilePath()));
setting->sync();
delete setting;

Вместо APP_NAME используешь имя своего приложения, вообще оно большого значения не имеет.

В Линухе можно глянуть в /home/user/.config/autostart или учесть разные DE.
В Маках, к сожалению, не секу, но тоже можно найти что попроще.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
ViGOur
  опции профиля:
сообщение 16.2.2009, 20:08
Сообщение #7


Мастер
******

Группа: Модератор
Сообщений: 3296
Регистрация: 9.10.2007
Из: Москва
Пользователь №: 4

Спасибо сказали: 231 раз(а)




Репутация:   40  


Цитата(panter_dsd @ 16.2.2009, 19:50) *
В Линухе можно глянуть в /home/user/.config/autostart или учесть разные DE
В том-то и дело, что нет уверенности, что учтешь все и так как нужно! :)
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
panter_dsd
  опции профиля:
сообщение 16.2.2009, 20:21
Сообщение #8


Жаждущий знаний
***

Группа: Участник
Сообщений: 254
Регистрация: 1.1.2009
Из: Санкт-Петербург
Пользователь №: 474

Спасибо сказали: 32 раз(а)




Репутация:   3  


Использование демонов тоже не вариант:
1. Нет вероятности, что на всех Линухах будет работать.
2. Нужны права рута для установки демона.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
edwardoid
  опции профиля:
сообщение 17.2.2009, 0:28
Сообщение #9


Участник
**

Группа: Участник
Сообщений: 171
Регистрация: 1.5.2008
Из: Ереван, Армения
Пользователь №: 164

Спасибо сказали: 0 раз(а)




Репутация:   0  


ну извините, обыюно человеку у которого нет прав рута не доверят ставить проги под нормальный никс.
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение
Константин
  опции профиля:
сообщение 17.2.2009, 2:33
Сообщение #10


Студент
*

Группа: Участник
Сообщений: 69
Регистрация: 9.2.2009
Пользователь №: 539

Спасибо сказали: 15 раз(а)




Репутация:   1  


Цитата(edwardoid @ 17.2.2009, 0:28) *
ну извините, обыюно человеку у которого нет прав рута не доверят ставить проги под нормальный никс.

интересно как он их(проги) будет ставить, если даже ему доверят? рута ему ведь всё-равно не дадут :)

на мой взгляд Пантер предложил лучший вариант. с оговоркой, что запускается гуёвая программа или вспомогательный процесс, необходимый непосредственно юзверю его запустившему. такой подход позволяет юзверю персонально управлять автостартом необходимых ему приложений, а не навязывать их юзверю свыше как венда.
если же требуется запуск системного процесса (демона), которым непривелигированный пользователь управлять не должен, выбор очевиден в пользу QtService (либо адекватного аналога).
Перейти в начало страницы
 
Быстрая цитата+Цитировать сообщение

2 страниц V   1 2 >
Быстрый ответОтветить в данную темуНачать новую тему
Теги
Нет тегов для показа


1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0


RSS Рейтинг@Mail.ru Текстовая версия Сейчас: 25.12.2024, 17:14