2009-10-29 75 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