如何在受控環境中從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 服務運行時域使用者憑證,「允許服務與桌面互動」選項可能無法使用。在這種情況下,建議將服務拆分為兩個元件:一個用於使用者權限,另一個用於桌面互動。此解決方法雖然特定於某些用例,但可以在將來避免相當大的挫折感。
免責聲明: 提供的所有資源部分來自互聯網,如果有侵犯您的版權或其他權益,請說明詳細緣由並提供版權或權益證明然後發到郵箱:[email protected] 我們會在第一時間內為您處理。
Copyright© 2022 湘ICP备2022001581号-3