2009-10-29 35 views
0

我设法通过HTTPService调用下面的php文件,然后使用TextArea的dataprovider属性来显示返回的输出,从而在Flex的TextArea中显示shell命令的输出。Flex:显示文本区域中C文件的输出

<?php 
$output = shell_exec('ls -l'); 
return $output 
?> 

现在我有它打印一些行(通过使用的C printf命令),当我使用

./myCfile 

但下面的PHP代码似乎并不返回任何东西在shell中运行它的C文件我TextArea保持空

<?php 
$output = shell_exec('./myCfile'); 
return $output 
?> 

我在这里错过了什么吗?

回答

0

在php中执行shell命令时,运行该命令的用户是运行web服务器守护程序的用户,并且该用户可能没有权限运行C应用程序。确保您通过C应用程序授予该用户权限,然后重试。另外,如果应用程序在其他地方输出(例如错误输出),则该应用程序必须输出到标准输出,shell_exec()将不会返回该内容。

+0

是的。我已经给了用户运行C应用程序的权利,但我使用printf,我不认为它将输出发送到标准输出。 – baltoro 2009-10-30 04:55:03