我正在为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); –