检查Qt c ++应用程序是否以sudo的形式运行

Check if Qt c++ application is running as sudo

本文关键字:sudo 运行 是否 Qt 应用程序 检查      更新时间:2023-10-16

我有一个Qt GUI应用程序,必须作为sudo运行。 现在,我有一个脚本,他们应该执行该脚本以启动程序作为 sudo,它添加了一个参数,我检查该参数以确保它们从脚本启动。

这种技术有效,但它并没有真正检查 sudo 是否,它只检查脚本启动了它。

关于做更精确的sudo测试有什么想法吗?

我会使用getuid或geteuid。

这是一个以前回答过的问题,类似于您的问题。

再次感谢大家的帮助。 的

if ( geteuid() ) {NotSudoDialog *sw = new NotSudoDialog; sw->show();}
else {MainWindow *kt = new MainWindow; kt->show(); }

技术效果很好。 我的"hacky"看看他们是否从脚本运行确实有效,但这要优雅得多。

对于那些关心的人,该程序必须作为sudo运行,因为它执行低级硬件例程并使用Raspberry Pi上的GPIO