Название: Проверка запуска под root Отправлено: pashazz от Сентябрь 28, 2009, 15:21 Написал такую функцию
Код
Сообщение показывается, но qApp->exit(0) не выполняется. Почему? Название: Re: Проверка запуска под root Отправлено: BRE от Сентябрь 28, 2009, 15:30 Сообщение показывается, но qApp->exit(0) не выполняется. Почему? Потому что цикл обработки событий еще не запущен, а QApplication::exit (так же как и QApplication::quit) завершает именно его.Название: Re: Проверка запуска под root Отправлено: sLiva от Сентябрь 28, 2009, 17:03 Написал такую функцию Опа спасибо тоже такая будет нужна :) а то еще не думал от куда такую инфу достать Название: Re: Проверка запуска под root Отправлено: pashazz от Сентябрь 29, 2009, 09:24 Сообщение показывается, но qApp->exit(0) не выполняется. Почему? Потому что цикл обработки событий еще не запущен, а QApplication::exit (так же как и QApplication::quit) завершает именно его.Название: Re: Проверка запуска под root Отправлено: Авварон от Сентябрь 29, 2009, 09:37 QApplication app(argc, argv);
app.exec(); но вызов exec() блокирующий. Поэтому надо бы делать не exit а return в данном случае Название: Re: Проверка запуска под root Отправлено: BlackTass от Сентябрь 29, 2009, 11:51 sLiva: не сказал бы что данный способ будет корректным....кто мне мешает поменять эту переменную окружения перед запуском приложения? лучше брать вывод от id -u. Если используется bash, то можно проверять $UID, $EUID переменные окружения, они не могут быть перезаписаны, но их нет например в sh.
Название: Re: Проверка запуска под root Отправлено: BRE от Сентябрь 29, 2009, 12:00 sLiva: не сказал бы что данный способ будет корректным....кто мне мешает поменять эту переменную окружения перед запуском приложения? лучше брать вывод от id -u. Если используется bash, то можно проверять $UID, $EUID переменные окружения, они не могут быть перезаписаны, но их нет например в sh. Так может проще использовать функции getuid() / geteuid().Если uid == 0, то это root. Название: Re: Проверка запуска под root Отправлено: BlackTass от Сентябрь 29, 2009, 12:02 BRE: Мда, и верно) что-то я про нее подзабыл
Название: Re: Проверка запуска под root Отправлено: sLiva от Сентябрь 29, 2009, 16:55 Так может проще использовать функции getuid() / geteuid(). Спасибо то что нужно |