如何确定当前进程是否已打开UI?

时间:2013-12-19 23:26:37

标签: c++ c

我正在编写一些库代码,它将以管理员/ root身份重新运行当前进程。问题是(对于linux至少)如果调用代码是命令行应用程序,最好的方法是调用sudo,而如果它是gui应用程序,gksudo是合适的。为了完整起见,也欢迎其他操作系统的解决方案(或指向解决方案的指针)。

此外,这对于GUI应用程序非常有用,我可以关闭printf语句。

1 个答案:

答案 0 :(得分:0)

如果设置了环境变量gksu(do),我将运行DISPLAY。如果应用程序有一个GUI,如果有一个X服务器正在运行,我们可以使用它,我们为什么不应该这样做,这并不重要?

不允许您确定是否应禁用标准输出。但是,stderr输出通常在.xsession-errors中捕获,即使没有连接终端,因此您可能不希望再次禁用该输出。