我在Qt中使用QThreads,我需要从Qt线程中启动命令行可执行文件,并在线程的上下文中运行相同的命令行可执行文件。
我已经使用了下面提到的代码,它似乎运行正常。但是,我想知道是否允许这种用法,因为我们正在QThread中启动QProcess。
void Help_Menu_Thread::run()
{
Insert_Log("INFO::Help file referred by Admin");
QProcess HelpStart;
HelpStart.execute("c:\\windows\\hh.exe LPRS_help.chm");
HelpStart.close();
}
等待您的回复。
此致
Saurabh G。
答案 0 :(得分:1)
只要您的主程序不必等待qprocess的输出或完成它,就可以安全地使用这种方式。这个帮助启动过程将从作为父进程独立运行的线程开始。但是如果在调用HelpStart.waitForFinished()
之前使用HelpStart.close();
会更安全