我正在尝试从php调用一个exe。exe是从Qt创建的。它在Qt中运行,也在命令行中运行,但是当我试图从php运行它时,输出就不完整了。执行程序大约需要5-7秒才能运行。
我从命令行获得的输出是:
--(!)Error loading
--(!)Error loading
1
2
3
4
5我不知道错误加载是为了什么,但是它仍然运行exe并给出输出。但是,当我从php运行它时,我得到
array(2) { [0]=> string(18) "--(!)Error loading" [1]=> string(18) "--(!)Error loading" }在错误加载之后,需要在命令行中使用abit时间来给出输出,所以可能php不等待它完成。我不确定。我如何找出错误是什么,以及如何解决这个问题?我用来调用exe的php脚本是:
<?php
$addr="/home/ggt/project/build-test-Desktop-Release/test";
exec($addr,$data);
var_dump($data);
?>我也试过使用shell_script。但不起作用。我甚至在主管之后插入了睡眠(20),但仍然是一样的。
发布于 2013-11-11 03:19:05
我解决了problem...It问题,是因为代码中有一个imshow(),我漏掉了它。所以,它没有执行整个程序,并停止了它。在我删除imshow之后,我得到了所有的输出。
https://stackoverflow.com/questions/19854746
复制相似问题