c++ - 如何启动具有 root 权限的 QProcess?

标签 c++ qt root rights qprocess

我需要从 Qt 程序启动 gphoto2。我这样做:

QString gphotoProgram = "/usr/bin/gphoto2";
QStringList gphotoArguments;
gphotoArguments << "--capture-image";
QProcess *gphotoProcess = new QProcess(this);
gphotoProcess->start(gphotoProgram, gphotoArguments);

但它永远不会以这种方式进入Running状态,因为gphoto2通常需要管理员权限才能在命令行上启动。

如何以适当的权限启动此 QProcess 以使 gphoto2 正常工作?

编辑:我明确表示我希望用户不必输入密码,这意味着 gksudo、kdesudo 或任何其他图形解决方案对我来说都不是有效的选择。

最佳答案

我强烈建议找到一种方法来允许 gphoto2 在登录用户的权限下运行。也许this article有一些有用的信息。

关于c++ - 如何启动具有 root 权限的 QProcess?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5625870/

相关文章:

c++ - Qt - 将 QEasingCurve 的输出用于动画以外的其他内容

c++ - 添加 Q_OBJECT 宏在 QThread 继承类中给出 "unresolved external error"

c++ - 从模板参数推导基本类型

c++ - 将 .so 和 .a 库添加到 Makefile

c++ - QLabel在调整大小时切断文本

android - 我如何以编程方式对手机的 CPU 施加压力?

c++ - 将 QGroupBox 添加到 QButtonGroup

java - QT 与 Flex/Flash/AIR 的多媒体对比

asp.net - 什么是 IIS 6 中的根目录以及如何将 ASP.NET 网站中的子文件夹之一设为根目录?

c - 是否有允许我的应用程序拥有 root 权限的系统函数?