【问题标题】:cannot use class QProcess in qt on windows 7无法在 Windows 7 上的 qt 中使用类 QProcess
【发布时间】:2013-04-19 04:35:38
【问题描述】:

我刚刚使用 QProcess 在 windows XP 上的 qt 中执行了一个 exe 文件。它可以正常工作,但不能在 Windows 7 上运行。我认为这显然是因为 Windows 7(或 Windows VISTA)上的 UAC 问题。有人可以帮我解决这个问题吗?提前致谢。这是我的代码:

QProcess p(0);
p.start("cmd", QStringList()<<"/c"<<"copy .\\tmp\\GamesKoreClient.exe .\\GamesKoreClient.exe");

【问题讨论】:

  • 你在 p.start 之后的某处有一行p.waitForFinished(); 吗?
  • 在写到这里之前,您是否检查了p.error()p.exitCode() 或任何可以引导您找到解决方案的内容?
  • @Shf 谢谢,确实是p.waitForFinished()的问题,加了之后就可以了。
  • @KamilKlimek 添加 p.waitForFinished() 后它可以工作。
  • 好的,我会把它作为答案发布出来

标签: qt windows-7 cmd uac qprocess


【解决方案1】:

您可以正确启动流程,但要接收结果,您必须等到此流程完成。在您开始流程后添加此行:

p.waitForFinished();

然后关闭进动:

p.close()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2011-07-02
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多