我有一個從應用程序中執行批處理文件的應用程序。批處理文件包含此從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