我需要從我的C#應用程序啓動一個完整的命令行,如「app.exe/arg1:1/arg2:true」。啓動一個命令行,包括來自C#的參數#
Process.Start和ProcessStartInfo需要設置文件名和參數屬性。有沒有辦法模仿一個真正的類似shell的執行(就像當你按WIN + R時那樣)?
我需要從我的C#應用程序啓動一個完整的命令行,如「app.exe/arg1:1/arg2:true」。啓動一個命令行,包括來自C#的參數#
Process.Start和ProcessStartInfo需要設置文件名和參數屬性。有沒有辦法模仿一個真正的類似shell的執行(就像當你按WIN + R時那樣)?
是的,您可以啓動cmd.exe
並將您想要發送的完整命令行作爲參數。
info.FileName = "cmd.exe";
info.Arguments = "app.exe /arg1:1 /arg2:true";
ProcessStartInfo.UseShellExecute做的Process.Start完全一樣的外殼: http://msdn.microsoft.com/en-us/library/system.diagnostics.processstartinfo.useshellexecute.aspx
我發現我一直在尋找的解決方案:對你的幫助再次Executing another program from C#, do I need to parse the "command line" from registry myself?
謝謝!
使用Process.Start找到了哪些缺陷? – Oded 2011-01-26 16:35:11
批處理文件如何啓動進程並使用Process.Start啓動批處理文件? – CodingBarfield 2011-01-26 16:36:03
命令行來自配置文件並作爲一個整體提供。我只是想模仿WIN + R的功能。我認爲即使VBScript有辦法做我需要的... – 2011-01-27 10:23:04