Я столкнулся со странной проблемой: у меня есть файл .bat, который содержит код для переименования файла, когда я открываю файл .bat вручную, он делает то, что в нем написано, то есть переименовывает файл, но когда я пытаюсь открыть его программно с C#, он ничего не делает, он просто открывает файл и не компилирует то, во что он записан. я набрал этот код:
Я также знал, что если вы введете путь в cmd и нажмете Enter, файл откроется и скомпилируется, поэтому я написал это:
Код: Выделить всё
ProcessStartInfo psi3 = new ProcessStartInfo("cmd", "/c " + '"'+"D:\\my Work\\My Soft\\CA Delete\\CA Delete\\bin\\Debug\\file.bat"+'"');
Process p3 = Process.Start(psi3);
p3.WaitForExit()
Но проблема все та же: файл открывается, но никогда не делает то, что в него записано.
РЕДАКТИРОВАТЬ: [Я понял, почему]
Я сделал снимок окон CMD, в которых должен запускаться файл .bat, и получил ОШИБКУ:
Код: Выделить всё
ERROR : THE FILE SPECIFIED COULD NOT BE FOUND
но как? когда я запускаю файл .bat вручную, он работает ПРЕКРАСНО!!!
Подробнее здесь:
https://stackoverflow.com/questions/932 ... om-c-sharp