如何在受控環境中從PHP 執行GUI 應用程式
在可見輸出的受控環境中從PHP 腳本運行外部進程可能具有挑戰性不允許來自GUI 程式。儘管成功嘗試使用 system 和 exec 啟動靜默進程,但在使用 GUI 介面執行程式時會出現困難。
要解決此問題,啟用 Apache 的「允許服務與桌面互動」選項至關重要服務。導覽至「服務」控制項(例如,透過「執行」中的「services.msc」),找到 Apache 服務,開啟其屬性,然後在「登入帳戶」標籤下選取此選項。
配置此設定後,PHP腳本可以有效地產生 GUI 進程。為了避免等待應用程式關閉,請使用 pclose(popen("start /B notepad.exe", "r"))。或者,為了阻止執行,請使用 system('start notepad.exe')。值得注意的是,此方法已在 Windows XP 上驗證,其他 Windows 版本可能需要調整。
其他注意事項:
如果 Apache 服務執行時間網域使用者憑證,「允許服務與桌面互動」選項可能無法使用。在這種情況下,建議將服務拆分為兩個元件:一個用於使用者權限,另一個用於桌面互動。此解決方法雖然特定於某些用例,但可以在將來避免相當大的挫折感。
以上是如何在不受輸出乾擾的受控環境中從 PHP 運行 GUI 應用程式?的詳細內容。更多資訊請關注PHP中文網其他相關文章!