我知道這可能是一個非常普遍的問題,但我想要做的是從php webapp啓動一個.exe程序。從php webapp打開.exe並登錄
.exe的第一個屏幕是帶有用戶名和密碼的登錄表單。 我想讓php代碼打開.exe程序,並將用戶名和密碼的相應值插入到它們的字段中(這些值存儲在mysql中)。
因爲我沒有需要打開的軟件,所以我知道這可能看起來是一個模糊的問題,但我正在尋找一種通用的方法或一些指針來做到這一點。
我知道這可能是一個非常普遍的問題,但我想要做的是從php webapp啓動一個.exe程序。從php webapp打開.exe並登錄
.exe的第一個屏幕是帶有用戶名和密碼的登錄表單。 我想讓php代碼打開.exe程序,並將用戶名和密碼的相應值插入到它們的字段中(這些值存儲在mysql中)。
因爲我沒有需要打開的軟件,所以我知道這可能看起來是一個模糊的問題,但我正在尋找一種通用的方法或一些指針來做到這一點。
所以,在註釋中光/聊天,我們有你的問題下,使用phpseclib,你應該能夠連接到遠程計算機,這將運行該應用程序:
require_once('Net/SSH2.php');
$ssh = new Net_SSH2('winhostaddress');
//if needed:
if (!$ssh->login('user', 'pass'))
{
exit('Failed to connect to win');
}
$ssh->exec('C:\\Path\\to\\app.exe argument1 argument2 argument3');
這應該做訣竅。使用標誌時,如* NIX系統:ls -a
,您應該知道Windows對應的是/
。除此之外,這幾乎都是一樣的。在將客戶數據傳遞給可執行文件時,不要忘記escapeshellarg
。
含有空格的參數應該用雙引號分隔。
如果你不知道天氣或不是你啓動應用程序是您用於通過ssh連接的用戶訪問,試圖預先考慮給你的實際的命令:
runas /user:username C:\\Path\\To\\App.exe
凡username
是用戶您確定具有的適當權限。請注意,您可能會提示您輸入密碼。
對於任何其他問題,這裏的一些相關問題:
謝謝你,現在很清楚,我會給它去一個 –
@CristianBican:在SO,這是自定義[接受答案](http://meta.stackexchange.com/questions/5234/how-does接受答案的工作),而不是發佈「坦克」 - 評論。如果你這樣做,那裏也有+2的代表:) –
對不起有點新的:) –
這的確是一個模糊的問題,而是關心更具體? 'system','exec','''/ *反引號* /'和'proc_open'都是候選項...... exe是GUI應用程序還是cmd應用程序?它是否可訪問,並且它是否與腳本運行在同一臺服務器上?檢查[這個問題](http://stackoverflow.com/questions/10102952/proc-open-interaction),和[這個問題](http://stackoverflow.com/questions/9843550/load-profile-with-proc - 開放),兩者都是我的,一年前問過,但仍然適用 –
好吧,所以[第一個鏈接的問題](http://stackoverflow.com/questions/10102952/proc-open-interaction)仍然適用,如果這是一個非GUI應用程序,你應該能夠從那裏拿走它。 –
該webapp將託管在外部服務器上,但該.exe將在PC上運行。 .exe將在Windows PC上運行,並具有預定的路徑,如「c:\ Program files \ soft \ theexe.exe」。 php腳本有這個路徑,需要打開它用來啓動命令的pc上的.exe。 –