我正在爲Application.ExecutablePath獲取一個字符串變量,然後通過ProcessStartInfo將該變量傳遞給命令行並帶有一些參數。我的代碼工作正常,只要「ExecutablePath」不包含空格,但如果它的確如C:\ documents和settings \ jsmith \ desktop,則C#會將空格作爲轉義處理,並且不會從命令行獲得結果。處理Application.ExecutablePath中的空間
這裏是我如何獲取路徑,還發送命令「lmutil」
string execName = Application.ExecutablePath;
FileInfo execFileInfo = new FileInfo(execName);
execPath = execFileInfo.DirectoryName;
string lmUtil = @"\lmutil";
lmExec = execPath + lmUtil;
This is the method in which I need to handle quotes in paths
GetLicStats(lmExec + " lmstat -a -c " + licport + "@" + curAdd);
我怎樣才能確保,如果它包含空格lmExec正確處理。
感謝您的答覆,並在你讓我覺得在這個正確的方式幫助。我最終在lmexec周圍添加了引號,如下所示:GetLicStats(「\」「+ lmExec +」\「」+「lmstat -a -c」+ licport +「@」+ curAdd); –