2011-08-29 86 views
0

我試圖在服務器上運行應用程序,使用下面的代碼從PHP調用它。使用phps exec命令在服務器上啓動應用程序

$application = "D:\\Program Files (x86)\\ScanBoy\\DM ScanBoy.exe"; 
exec($application); 

現在的應用是「跑」但是它崩潰瞬間。如果我只是運行應用程序(通過雙擊exe)它運行,一切都很好。

當應用程序崩潰我得到的唯一錯誤是

{應用程序名稱}已停止工作。Windows正在檢查一個 解決問題的辦法」

我有有通過c#後臺運行應用程序到ASP.NET頁面的這個問題。那裏的解決方案是設置工作目錄。然而在php/exec中,我不知道如何設置這個選項。

請幫忙嗎?

回答

2

您可以:

  1. 使用exec("cd myworkdir/ && D:\\Program Files (x86)\\ScanBoy\\DM ScanBoy.exe");改變工作目錄爲exec命令(只)

  2. 使用PHP chdir()功能改變PHP程序的工作目錄。

你可以找到chdir文檔在這裏: http://php.net/manual/en/function.chdir.php

+0

三江源,當我在等待迴應,我想通了這一點:)我的下一個問題是:在我啓動應用程序之後,是否需要將目錄更改回原來的WD?如果我不這樣做,它會對php/mysql產生影響嗎? – rlemon

+0

不,您不必除非在您正在使用的現有工作目錄中有某個文件。 PHP/MySQL不會在意。 –

相關問題