Есть ли какой-либо способ запустить файл .bat на сервере IIS с помощью ASP.NET-что?
Я создал пакетный файл с помощью c#. Он работает в локальном режиме, но когда я развернул его в IIS, он не работает.
Что я уже пробовал:
Мой код:
StreamWriter sw = File.CreateText("C:\\inetpub\\wwwroot\\StarRECONPADSS\\Files\\" + "TESTDEL.bat"); sw.WriteLine("set _p= %-p%"); sw.WriteLine("sdelete _p 7 " + sourcePath + FileName); sw.Close(); Process p = new Process(); p.StartInfo.RedirectStandardOutput = false; p.StartInfo.FileName = "C:\\inetpub\\wwwroot\\StarRECONPADSS\\Files\\" + "TESTDEL.bat"; Write(p.StartInfo.FileName); p.StartInfo.UseShellExecute = false; p.StartInfo.WorkingDirectory = Environment.CurrentDirectory; Write(p.StartInfo.FileName); p.StartInfo.RedirectStandardError = true; Write("BatchFile: Start() Execution Started"); p.Start(); p.WaitForExit(); Write("BatchFile: WaitForExit() Execution Ended"); p.Dispose();
F-ES Sitecore
"Не работает" не дает никому достаточно информации, чтобы помочь вам. Проверьте, действительно ли процесс запускается, отслеживая список задач. Это может быть проблема с тем, что делает файл bat, может быть, ему нужен доступ к рабочему столу, но он не может этого сделать, может быть, ему нужен доступ безопасности к чему-то, но у него его нет. Кроме того, если вы намереваетесь запустить этот bat-файл на клиенте, то это невозможно.
Dave Kreskowiak
Почему вы используете пакетный файл для удаления файлов? Почему вы чувствуете необходимость использовать Secure Delete на веб-сервере?
Далее, этот пакетный файл выглядит ... трусливый. Вы уверены, что он вообще работает после того, как он был написан?
ZurdoDev
Так что отладьте его. Что ты хочешь, чтобы мы сделали?