【问题标题】:How to run one qt application from another qt application如何从另一个 qt 应用程序运行一个 qt 应用程序
【发布时间】:2012-09-27 05:09:26
【问题描述】:

我有一个 Qt 应用程序 (App1)。 我想从另一个 qt 应用程序(App2)运行 App1。 我试过使用 QProcess 但 App1 没有运行。 请帮帮我。 我正在研究 RHEL 6。

     QProcess process = new QProcess();
    QString program = "/home/user1/Desktop/MyApp/App1";
    process->start(program);

【问题讨论】:

  • 你检查过返回的错误码吗?
  • 我没有收到任何代码错误,但我的 App1 没有运行。
  • 来自 Luca Carlon 回答下面的 cmets 我假设您的“App1”在这里有问题。你能给我们看一些 App1 的代码吗?

标签: qt qt4 qprocess


【解决方案1】:

试试这个:

int exitCode = QProcess::execute(program);
qDebug("Exit code is: %d.", exitCode);

并检查会发生什么。这是一个同步调用。在您了解发生了什么之后,如果需要,将其改回异步。

【讨论】:

  • 使用此代码,App1 开始执行,但我收到错误为 ERROR!!无法打开:App1.ui 退出代码为: 1. 虽然 App1.ui 存在于同一文件夹中
  • 然后使用QProcess检查ExitStatus和ProcessError,以便收集更多信息。
  • 现在工作正常..谢谢 是否可以在我当前的类 QWidget 中显示新执行的应用程序?
【解决方案2】:

试试这个:

QProcess *p= new QProcess(this);
p->start("yourotherapp.exe",QIODevice::ReadWrite);

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-01-19
    • 1970-01-01
    相关资源
    最近更新 更多