Я безуспешно пытаюсь использовать метод запуска приложения с ProcessStartInfo. Я пытаюсь запустить bat-файл, который является ярлыком. Вот что я пробовал:
string myfile = @"\\jcbestbadev01\FSBATest\FSBATest.bat";
var startInfo = new ProcessStartInfo(myfile);
startInfo.UseShellExecute = true;
ApplicationUnderTest cmdApplication = ApplicationUnderTest.Launch(startInfo );
Это не сработало.
Я пробовал это также:
StreamReader SR = new StreamReader(myfile);
string strFileText= SR.ReadToEnd();
SR.Close();
SR.Dispose();
ProcessStartInfo processInfo;
Process process;
processInfo = new ProcessStartInfo("C:\\Windows\\System32\\cmd.exe ", "/c " + strFileText);
processInfo.UseShellExecute = true;
Это тоже не сработало. Я продолжаю получать сообщение об ошибке:
Приложение не может быть запущено. Это может быть вызвано одной из следующих причин:
1) Другой экземпляр приложения уже запущен, и одновременно может работать только один экземпляр.
2) Приложение запустило другой процесс и теперь остановился. Возможно, вам потребуется запустить процесс напрямую.
3) У вас недостаточно прав для работы с этим приложением.
Что касается моего первого решения, оно запускает его и по-прежнему выдает ошибки, хотя оно уже выполнилось и открыло приложение. Последнее решение выдает ошибки.
Может кто-нибудь сказать мне, почему он выдает ошибку даже после выполнения и запуска файла?