В процессе решения определённых задач мы пишем программы, утилиты, которые в определённый момент должны запускать сторонние программы, а иногда запускать с параметрами. Я сталкивался с данной задачей несколько раз, поэтому решил, что надо вкратце описать данный процесс, чтобы в дальнейшем, если понадобится, быстро найти решение и им воспользоваться.
Напишем следующий код:
Process iStartProcess = new Process(); // новый процесс iStartProcess.StartInfo.FileName = @"C:\program.exe"; // путь к запускаемому файлу iStartProcess.StartInfo.Arguments = " -i 192.168.10.12 -p 10568"; // эта строка указывается, если программа запускается с параметрами (здесь указан пример, для наглядности) iStartProcess.StartInfo.WindowStyle = ProcessWindowStyle.Hidden; // эту строку указываем, если хотим запустить программу в скрытом виде iStartProcess.Start(); // запускаем программу iStartProcess.WaitForExit(120000); // эту строку указываем, если нам надо будет ждать завершения программы определённое время, пример: 2 мин. (указано в миллисекундах - 2 мин. * 60 сек. * 1000 м.сек.)
Все комментарии есть в коде, поэтому считаю излишним дополнительно комментировать написанный выше код.
Для работы кода достаточно подключить «System.Diagnostics»:
using System.Diagnostics;
спасибо, бобр-человек.
Можно еще добавить что некоторые проги не запускаются без указания рабочей папки.
iStartProcess.StartInfo.WorkingDirectory= @"C:\Program\64bit\";
Спасибо.
Спасибо. Заметка очень помогла и уже не впервой раз. Тоже зашел через поиск.
Начал искать инфу по запуске програм из кода на с# . И сразу через поиск сюда пришел. Спасибо за выжимку