2013-01-19 99 views
1

我試圖通過參數/參數從一個批處理文件,一個簡單的C#Console.Writeline(參數[0])程序。從批處理文件到C#程序傳遞ARGS與空間

我的程序的exe文件有一個雙字名稱,空間爲,這就是問題!整個事情只有當我重命名exe文件到一個字和寫start SchoolBook.exe OMG和arg [0]然後變成等於「OMG」。 但在任何其他情況下,程序無法啓動。

  • 如果我離開它開始學校Book.exe OMG它說:「Windows無法找到‘學校’」
  • 如果我把雙引號:start "School Book.exe" OMG它說:「Windows無法找到」 OMG「」
  • 如果我把單引號無法找到‘學校’
  • 我試圖把一個‘ - ’OMG的面前,把引號的媽呀,甚至把%1%之前沒有!沒有什麼作品.. 任何幫助?

預先感謝您!

+0

我會做同樣的事情,你讓我好奇掛在:p – bas

回答

2

我剛剛創建了一個空的命令應用程序「School Book」,它在生成時生成可執行文件School Book.exe

我很空的實現:

class Program 
{ 
    static void Main(string[] args) 
    { 
     if (args.Length > 0) 
     { 
      MessageBox.Show(args[0]); 
     } 
     else 
     { 
      MessageBox.Show(args[0]); 
     } 
    } 
} 

在我的命令框我可以執行的程序是這樣的:

Debug>start "" "School Book.exe" OMG 

現在一個消息與 「OMG」 彈出

+0

我認爲它也應該工作,但OP的使用'開始' – kenny

+0

啊好點,我會更新答案 – bas

+0

是的!在批處理文件中更改(啓動「School Book.exe」OMG)(啓動「」School Book.exe「OMG)會有效。謝謝@Haxx – Bonnev