我有一個應用程序應該幫助我的項目在構建前和事件後事件處理方面。我正在使用ndesk.options進行命令行參數分析。當我的項目路徑包含空格時,這給了我奇怪的結果。我認爲這是ndesk.options的錯,但我想我的應用程序是責怪。我把我的應用程序後,建事件,像這樣:Visual Studio中的空格和反斜槓構建事件
build.exe --in="$(ProjectDir)" --out="c:\out\"
一個簡單的foreach在ARGS []顯示以下內容:
--in=c:\my project" --out=c:\out"
發生了什麼事是,在每個參數的最後一個「被處理。就好像是逃過因此尾部的反斜槓被刪除,整個事情被視爲一個單獨的參數
現在,我想我是通過簡單地逃脫第一「爲好,像這樣聰明:。
build.exe --in=\"$(ProjectDir)" --out=\"c:\out\"
在這種情況下所得到的ARGS []看起來像這樣:
--path="c:\my
project"
--out="c:\out"
的斜槓在參數仍吞嚥和第一參數現在分裂。
將此參數[]傳遞給ndesk.options會產生錯誤的結果。
正確的命令行應該如何查看,以便正確的元素最終位於正確的args []槽中?另外,如何解析命令行參數,如有或沒有ndesk.options?任何建議都是值得歡迎的。
在此先感謝
這的確如同魅力一般。在這裏,我想我嘗試了每種組合。非常感謝 :) – 2010-03-23 22:40:38