2011-07-26 44 views
0

大家好我是全新的PHP,所以在這裏很容易。 :)要運行的程序的網頁

我正在嘗試做一個最低限度的網頁來運行我的電腦上的各種東西。

例如,我有一個按鈕,並在嘗試運行以下命令:

<?php 
exec("taskkill /IM iexplore.exe"); 
?> 

然而,沒有任何反應。我在谷歌和這裏閱讀了一大堆,但我找不到解釋這個問題的任何東西。我在Win 7上禁用UAC,運行最新版本的WAMP。 (到目前爲止我發現的所有東西都可以解決IIS問題)

有人能指出我的方向嗎?

+0

哪裏是你的PHP代碼?該exec將在PHP服務器上運行,而不是在客戶端上運行(除非它們碰巧是同一個...) – Joe

+0

我認爲如果您希望在計算機上運行/終止應用程序,PHP並不是使用的技術。我會研究Perl,Java或VB.NET。 Perl可能是最容易學習的。 –

+0

不,我想PHP。我正在創建一個小型網頁,以從我的iPhone上殺死服務器上正在運行的程序。 – David

回答

-2

exec()適用於CLI模式(本地)。玩你的bash。

+0

如果PHP文件正在Web服務器上執行,則不會導致Web瀏覽器打開這樣的新進程! – toopay

+0

在解釋你的意思時可能會有一些混淆。由於使用了'windows'標籤,因此可以假定'bash'在這裏不相關。另外,'exec' PHP函數不僅僅用於CLI環境。 –

+0

'因爲使用'windows'標籤,所以可以假定'bash'在這裏不相關。爲什麼? Windows中也有bash,不僅在* nix中。在你投票回答某人之前,至少要做一些小小的研究。我認爲這是一個巨大的安全漏洞,如果無論出於何種原因,你可以通過在你的PHP應用程序中添加一些東西來激發Windows計算機彈出或運行一個程序/任務。 PHP是服務器端語言,除非像我說的那樣,你在本地計算機上執行該操作,並從CLI執行你的PHP代碼(大多數使用bash),否則不可能這樣做。 – toopay

0

我想你在找什麼是shell_exec

您也可以使用這個內置的函數從PHP Manual

希望這有助於

function runAsynchronously($path,$arguments) { 
    $WshShell = new COM("WScript.Shell"); 
    $oShellLink = $WshShell->CreateShortcut("temp.lnk"); 
    $oShellLink->TargetPath = $path; 
    $oShellLink->Arguments = $arguments; 
    $oShellLink->WorkingDirectory = dirname($path); 
    $oShellLink->WindowStyle = 1; 
    $oShellLink->Save(); 
    $oExec = $WshShell->Run("temp.lnk", 7, false); 
    unset($WshShell,$oShellLink,$oExec); 
    unlink("temp.lnk"); 
}