2008年4月16日 星期三

如何讓你的PHP執行windows上的外部程式

windows上的apache+PHP可以經由如下的方式來喚起一個windows程式
例如由PHP執行一個cmd.exe視窗起來

< ?php$WshShell = new COM("WScript.Shell");
$oExec = $WshShell->Run("cmd /C dir /S %windir%", 0, false);?>

就可以藉用這段code達到目的。如果執行不起來,請確認下面的選項是否已被設定

(1)選擇在 "服務" 中的apache,按右鍵選內容。選 "登入" 頁面,將 "允許服務與桌面互動"打勾。
(如果被喚起的程式是GUI based的,就需要勾選此項)

(2)安裝WScript.Shell服務 (這個動作可能引起Hacker的侵入)

regsvr32 C:\windows\System32\wshom.ocx
regsvr32 C:\windows\system32\shell32.dll

(3)你想執行的程式路徑是否已在系統變數Path當中 ,如果沒有,請至

[我的電腦]按右鍵 -> 選內容 -> 進階 -> 系統變數中 修改

沒有留言: