C# 通行证;使用escape\p4v执行cmd不会删除c中的\#

C# 通行证;使用escape\p4v执行cmd不会删除c中的\#,c#,cmd,perforce,C#,Cmd,Perforce,我试图创建一个字符串传递给cmd,让P4V创建并标记一个文件。问题是,当我将字符串传递给cmd时,转义\被视为文件路径的一部分,导致找不到文件。有没有办法通过一个“无需”的考试 下面是我正在使用的代码,它在cmd中生成一个字符串作为 p4 tag -l labelname \"c:\folder\filename\" 谢谢你的帮助 这里是传递给进程的实际字符串(proc.Arguments)。我在这台计算机上没有Perforce,因此无法显示cmd.exe中的内容 “/k p4 tag-l la

我试图创建一个字符串传递给cmd,让P4V创建并标记一个文件。问题是,当我将字符串传递给cmd时,转义\被视为文件路径的一部分,导致找不到文件。有没有办法通过一个“无需”的考试

下面是我正在使用的代码,它在cmd中生成一个字符串作为

p4 tag -l labelname \"c:\folder\filename\" 谢谢你的帮助

这里是传递给进程的实际字符串(proc.Arguments)。我在这台计算机上没有Perforce,因此无法显示cmd.exe中的内容


“/k p4 tag-l labelname \“c:\folder\filename\”

当您使用
String.Format

proc.Arguments = string.Format("/k p4 tag -l {0} \"{1}\"",
                               "labelName", 
                               @"c:\folder\filename");

将字符串输出到控制台、调试输出或文件,然后将真实结果复制粘贴到问题中。不要向我们显示假输出或重新键入的输出。并将字符串放入有帮助的预格式化标记库中。
             string tempString = @" """;
             tempString = tempString + stringToTest;
             stringToTest = tempString + @" """;

            System.Diagnostics.ProcessStartInfo proc = new System.Diagnostics.ProcessStartInfo();
            proc.FileName = @"c:\windows\system32\cmd.exe";
            proc.Arguments = @"/k p4 tag -l " + newLabel + " " + stringToTest;
            System.Diagnostics.Process.Start(proc);}enter code here
proc.Arguments = string.Format("/k p4 tag -l {0} \"{1}\"",
                               "labelName", 
                               @"c:\folder\filename");