[英].NET: How to pass command-line parameters with a temp file name
這是.NET 2.0 WinForms。 我有一些這樣的代碼
string str = Path.GetTempFileName();
Process p = new Process();
ProcessStartInfo psi = new ProcessStartInfo();
psi.Arguments = str
psi.FileName = <some executable >
p.StartInfo = psi;
p.Start();
現在,在“啟動”過程中,我通過說args[0]
獲得臨時文件名。 在Win XP上,這會導致問題,因為臨時文件位於C:\\Documents and Settings\\...
。 該空間引起了問題,因此args[0]
是C:\\Documents
。
我怎樣才能解決這個問題? 我是否只需要在引號中str
? 還是可以讓空格以某種方式被忽略?
是的,請使用引號。
您可以將路徑用雙引號引起來,也可以使用本機的GetShortPathName函數將路徑轉換為其短(8.3)表示形式。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.