我想從C#運行幾個Windows程序。我將如何做到這一點?從我一直在尋找了,它是與的System.Diagnostics.Process的啓動方法C#中的命令行命令
會只是我使用
System.Diagnostics.Process;
然後鍵入
start("Command to be executed");
或者我不正確地看着這個問題?
C#的新手。
我想從C#運行幾個Windows程序。我將如何做到這一點?從我一直在尋找了,它是與的System.Diagnostics.Process的啓動方法C#中的命令行命令
會只是我使用
System.Diagnostics.Process;
然後鍵入
start("Command to be executed");
或者我不正確地看着這個問題?
C#的新手。
事情是:基本上「要執行的命令」部分是您將在命令提示符下鍵入的內容。例如:
Process.Start("C:\Programs\programFile.exe",
"/arg1='This is an argument' -arg2=anotherArgument someOtherArgument");
程序的入口點(該文件位於「C:\程序\ programFile.exe」)將收到其主要方法如下參數列表:
args[0] = "/arg1='This is an argument'"
args[1] = "-arg2=anotherArgument"
args[2] = "someOtherArgument"
這種將參數作爲命令行傳遞的方式顯然不是最大的格式,但它始終在做這項工作。
除了你不應該傳遞參數給可執行文件。使用Start的適當超載。 –
你說得對,只是更正 – fernandoespinosa
// Start Internet Explorer. Defaults to the home page.
Process.Start("IExplore.exe");
// Display the contents of the favorites folder in the browser.
Process.Start(myFavoritesPath);
從MSDN
根據您的意見,似乎你不熟悉
面向對象編程
命名空間和類。讓我們分解它。
Process
是一個類,是.NET框架的一部分。 Process
已收集方法,其中一些方法是static
方法。 Start
是這些靜態方法之一。有必要的,以便兩件供您使用Process.Start
:
Process
。您可以通過將using System.Diagnostics;
添加到類文件的頂部,將該信息提供給編譯器。這告訴編譯器尋找System.Diagnostics
命名空間中的類,這是Process
所在的位置。Start
的方法,該方法屬於進程類的一部分。您可以使用Process.Start()
來完成此操作。或者在你的情況,Process.Start("Command to be executed");
有兩個原因,爲什麼你不能只是輸入start("Command to be executed")
:
start
,以小寫的「s」,是不一樣的Start
用大寫的「S」 。 C#是一個區分大小寫的語言。現在我發現我的答案中沒有任何內容與面向對象編程有關,而只是名稱空間和類。好吧。 – ean5533
您是否檢查過[文檔](http://msdn.microsoft.com/de-de/library/53ezey2s(v = vs.100).aspx)? – GameScripting
您似乎已經完成了答案,但實際上並未嘗試實施。爲什麼不? – ean5533
因爲打字「開始」給了我一條波浪線。 –