我想用參數:filename來運行進程。如何在啓動新進程時用空格指定參數
string parms = filechooser.Filename ;
psi = new ProcessStartInfo("timidity", parms);
當用戶選擇帶有空格的文件名時會出現問題。 郝我可以傳遞參數與「」?
感謝
我想用參數:filename來運行進程。如何在啓動新進程時用空格指定參數
string parms = filechooser.Filename ;
psi = new ProcessStartInfo("timidity", parms);
當用戶選擇帶有空格的文件名時會出現問題。 郝我可以傳遞參數與「」?
感謝
試試這個。
string parms = filechooser.Filename ;
psi = new ProcessStartInfo("timidity", "\"" + parms + "\"");
你可以在雙引號包住值:
string parameters = string.Format("\"{0}\"", filechooser.Filename);
psi = new ProcessStartInfo("timidity", parameters);
這應該工作得很好,空間也將被通過。
不過,如果你想逃避的文件名(這取決於應用程序被啓動,即膽怯),這樣做:
string parms = string.Format("\"{0}\"", filechooser.Filename);
psi = new ProcessStartInfo("timidity", parms);
這將創建一個基於格式\"{0}\"
的字符串。 \"
成爲報價("
),並且{0}
將被替換爲格式字符串之後的第一個參數,即文件名。
您可以使用「開始」,「運行」功能或命令提示符(cmd.exe
)嘗試此操作。輸入膽怯那麼你的文件全名,用空格等,看看是否可行:
timidity "my filename"
反斜槓是你的朋友:
"\"timidity\""
不,它的文件名有空間,不是要啓動的程序(「膽怯」沒有空格) –