如何使用 Qt 运行 windows cmd 命令?

新手上路,请多包涵

我必须使用 Qt 运行以下命令,这将弹出 Git GUI 窗口。

 D:\MyWork\Temp\source>git gui

我怎么做?

我尝试了以下方法,但没有奏效:

 QProcess process;
process.start("git gui",QStringList() << "D:\MyWork\Temp\source>");

原文由 Lasitha Konara 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 936
2 个回答

我使用以下简单的代码段解决了我的问题

#include <QDir>

QDir::setCurrent("D:/MyWork/Temp/source");
system("git gui");

原文由 Lasitha Konara 发布,翻译遵循 CC BY-SA 3.0 许可协议

尝试这个:

 QProcess process;
process.setWorkingDirectory("D:\\MyWork\\Temp\\source");
process.start("git", QStringList() << "gui");

或者如果你想在一行中完成,你可以这样做(这里我们使用 startDetached 而不是 start ):

 QProcess::startDetached("git", QStringList() << "gui", "D:\\MyWork\\Temp\\source");

在第二种情况下,最好检查返回码(如果您的程序无法运行外部程序,则显示错误消息)。您也可以将所有参数放在第一个 program 字符串中(即 process.start("git gui"); 也允许):

 bool res = QProcess::startDetached("git gui", QStringList(), "D:\\MyWork\\Temp\\source");
if (!res) {
  // show error message
}

原文由 Ilya 发布,翻译遵循 CC BY-SA 3.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题