可能重複:
Best way to parse command line arguments in C#?解析開關(命令行參數)到我的C#WPF應用程序
我想知道我怎麼可以解析的命令行參數,以我的C#WPF應用程序,所以我可以使用像shutdown.exe
這樣的開關。例如運行shutdown.exe /h
將使計算機休眠。
可能重複:
Best way to parse command line arguments in C#?解析開關(命令行參數)到我的C#WPF應用程序
我想知道我怎麼可以解析的命令行參數,以我的C#WPF應用程序,所以我可以使用像shutdown.exe
這樣的開關。例如運行shutdown.exe /h
將使計算機休眠。
鑑於標籤,我假設這是一個WPF應用程序。這使得它更加尷尬,因爲自動爲您生成Main
方法。
兩種替代映入腦海:
創建具有static void Main(string[] args)
方法的單獨的入口點類型(例如Program
),並設置爲在項目屬性的入口點。然後,您可以解析命令行參數,對其執行操作,並根據需要在「真實」應用程序上調用Main
方法。
在主App
XAML中爲StartUp
事件添加事件處理程序。該處理程序將獲得一個StartUpEventArgs
值,您可以通過Args
屬性在命令行參數中獲取該值。
其中的第二個可能是更習慣的方法,但如果您更改爲控制檯或WinForms應用程序將需要更多的更改。
@ t27o :'App.xaml',因爲它描述你的*應用*啓動。 –
你可以做這樣的事情。我沒有測試過,但我相信它會起作用。
static void Main(string[] args)
{
if (args.Length > 0 && args.Contains("/?"))
{
ShowHelp();
}
}
爲什麼這個標記爲WPF? – Paul
在你的問題中根本沒有任何有意義的信息。 –
NDesk.Options是做這件事的好方法。看到這個[問題] [1] [1]:http://stackoverflow.com/questions/491595/best-way-to-parse-command-line-arguments-in-c – Jason