【问题标题】:How can i open an executable from an qt application (c++)如何从 qt 应用程序 (c++) 打开可执行文件
【发布时间】:2021-04-23 10:28:00
【问题描述】:

我使用了那个解决方案,但它看起来只能从目标 %windir%\system32\ 启动一个 exe,比如记事本、写字板等。

例如,我想启动 Mozilla 或 Chrome 或任何其他不在该目标中的程序。

void MainWindow::on_pushButton_clicked()
{
    QProcess *proc = new QProcess(this);
    proc->start("notepad.exe");
}

【问题讨论】:

  • 您需要指定完整路径。 notepad.exe 有效,因为它们的路径位于 PATH 环境变量中。
  • 只定义可执行文件的绝对路径:像C:\\Program Files\\Mozilla\\Firefox\\firefox.exe(我现在没有Windows,所以firefox.exe的路径可以不同)。
  • 谢谢。但是如果我在 PATH 环境变量中添加 Mozilla 路径,它应该可以工作吗?

标签: c++ qt qprocess


【解决方案1】:

这更多地与操作系统的工作方式有关。使用 cmd 和 type 命令时,您实际上执行的是路径中的程序(如 system32)。没有办法执行不在路径位置且您不知道位置的程序,除非您想实现搜索功能。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2018-09-30
    • 2012-01-08
    • 2020-02-22
    • 2010-09-30
    • 2011-12-02
    • 2011-03-27
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多