2012-02-24 25 views
1

在我的應用程序,用戶可以選擇一個程序:定位到一個文件夾,並執行應用C#

D:/application/app.exe

我想執行它使得我有同樣的情況做CMD上,它會顯示:

C:/ 

那麼我要做的:d:

然後:

D:/application/app.exe 

該應用程序可以是僅在其用於與其他的庫連接夾運行。

我該如何讓它可以從C#中執行它,使其定位到D:/應用程序,然後執行:app.exe?

在此先感謝。

+0

你的意思是,他們只能運行從d節目:\應用? – 2012-02-24 13:52:07

+0

@devn是一個FileOpenDialog(顯示一個樹和文件夾和文件列表)替代你嗎? – brgerner 2012-02-24 13:56:10

回答

3

查看ProcessStartInfoWorkingDirectory財產。例如。

Process.Start(new ProcessStartInfo { 
             WorkingDirectory = @"D:\application", 
             FileName = "app.exe" 
            } 
+0

謝謝!這是工作 – olidev 2012-02-24 14:08:05

2

Path class可以幫助您解析和處理您的輸入路徑。

Path.GetPathRoot("D:\MyApp\App.exe") --> D:\ 
Path.GetDirectoryName("D:\MyApp\App.exe") --> D:\MyApp 
3

您可以設置工作目錄當你開始一個新的進程:

Process.Start(new ProcessStartInfo() 
{ 
     FileName = @"D:\application\app.exe", 
     WorkingDirectory = @"D:\application", 
     //... 
}); 
1
ProcessStartInfo psi = new ProcessStartInfo(@"D:\application\app.exe") { WorkingDirectory = @"C:\" }; 
Process.Start(psi); 
相關問題