Запустите файл .bat из cmd.exe в C# с различными аргументами
Я весь день пытался запустить процесс, который запускал бы следующий код:
C:\bin\ant.bat -f=C:\build.xml -DinputFile=C:\Desktop\Book1.xml -DstartDate=2018-06-20 -DxslFile=ProcessingDate -DoutputFile=fff
и он прекрасно работает в cmd.
Что я уже пробовал:
это мой последний код на C#, который, как я действительно надеялся, будет работать, но, однако, это не так:
public void run() { string antFile = @"C:\ant.bat"; string build = @"C:\build.xml"; string inputFile = @"C:\Book1.xml"; string startDate = "2018-05-23"; string outputFile = "ff"; ProcessStartInfo procStartInfo = new ProcessStartInfo("cmd.exe", "/c" + @"C:bin\ant.bat -f=C:\build.xml -DinputFile=C:\Desktop\Book1.xml -DstartDate=2018-06-20 -DxslFile=ProcessingDate -DoutputFile=test0.xsl"); Process proc = new Process(); proc.StartInfo = procStartInfo; proc.Start(); ProcessStartInfo procStartInfo2 = new ProcessStartInfo("cmd.exe", "/c" + antFile + "-f=" + build + "-DinputFile=" + inputFile + "-DstartDate=" + startDate + "-DxslFile=" + startDate + "-DoutputFile=" + outputFile); Process proc2 = new Process(); proc2.StartInfo = procStartInfo2; proc2.Start(); }
Во-первых, я попытался просто поместить все из cmd в процесс, но это не сработало, после того как я попытался сделать то, что на самом деле должен: поместить все строковые значения в качестве аргументов, но это тоже не сработало.
Вместо этого я получаю кучу исключений. Я добавляю ссылку на скриншот этих исключений: Скриншот 19 — imgbb.com[^] [^]
У меня буквально нет вариантов, так как я просидел весь день, делая это. Кто-нибудь знает, что это может быть за проблема?