我有一个从应用程序中执行批处理文件的应用程序。批处理文件包含此从c发送包含批处理文件空间的路径#
attrib %1 +h +r +s /s /d
pause
我在C#应用程序代码是
Process p = new Process();
string [email protected]"C:\Users\INDERJEET\Desktop\Antivirus works\Antivirus\Batchfiles\Testproject";
p.StartInfo.FileName = @"C:\Users\INDERJEET\Desktop\Antivirus works\Antivirus\Batchfiles\hide_2.bat";
p.StartInfo.Arguments = m;
p.StartInfo.Verb = "runas";
p.Start();
当过我运行此。它似乎只挑选了C:\ Users \ INDERJEET \ Desktop \ Antivirus之后的路径,而不是之后..如何将整个路径发送到cmd。
您需要用双引号(' “')路径周围 - '串m = @” “” C:\用户\ INDERJEET \桌面\杀毒软件的工作原理\杀毒软件\批处理文件中\ Testproject “”” ;' – Tim 2014-11-08 10:21:48
尽管我在.bat文件中放了一个暂停语句,但它只是出现一秒钟而消失,当我在路径中放置双引号时,会发生这种情况 – 2014-11-08 10:27:51
@蒂姆有没有其他方式发送路径?或者可以解决问题的矫正。因为双引号方法不起作用。我试了p.StartInfo.Arguments = m.Replace('','%'); 。由于%不是相同的路径位置,所以不起作用。 – 2014-11-08 11:23:51