Windows Qt 调用批处理文件并退出应用程序

Windows Qt Invoke batch file and exit the App

我正在 Windows8 使用 Qt 开发一个应用程序,我需要为它创建一个更新程序。我已经写了更新下载器部分,以及一个更新脚本来用新下载的数据替换所有以前的内容。

现在我需要从应用程序本身执行 bat 文件,并在脚本执行之前退出应用程序,因为脚本将删除我当前的所有 dll 和应用程序二进制文件 运行。

我该如何解决这个问题?

谢谢 哈里斯

您可以使用 QProcess::startDetached 到 运行 命令提示符的实例,将批处理文件作为新进程中的参数并从中分离。之后你应该退出应用程序:

QProcess::startDetached("cmd.exe", QStringList() << "/c" << "path\to\mybat.bat");
qApp->quit();