我想从我的 QT-Programm 中启动一个外部程序。唯一可行的解决方案是:
system("start explorer.exe");
但它只适用于 Windows 并启动命令行片刻。
接下来我尝试的是:
QProcess process;
QString file = QDir::homepath + "file.exe";
process.start(file);
//process.execute(file); //i tried as well
但是什么也没发生。有任何想法吗?
原文由 btzs 发布,翻译遵循 CC BY-SA 4.0 许可协议
如果您的
process
对象是堆栈上的变量(例如在方法中),则代码将无法按预期工作,因为您已经启动的进程将在QProcess
的析构函数中被杀死---
,当方法完成时。您应该像这样在堆上分配
QProcess
对象: