Проблема, с которой я сталкиваюсь, как подсказывает мой заголовок, заключается в определении, была ли программа, которую я начал использовать с помощью командной строки, закрылась или закончилась.
Я пробовал много разных способов проверить, вышла ли программа, используя ID процесса, даже используя цикл, к сожалению, я не могу заставить его работать.Я считаю, что это связано с тем, что я создал процесс, который запускает программу, используя командные строки, а не метод, указывающий на каталог для запуска программы.Причина, по которой я использовал командные строки, заключается в том, что путь к программе находится в программе (x86), которая не работала для меня из-за пробела, который я предполагаю.
Часть кода, которая запускает приложение
ProcessStartInfo start = new ProcessStartInfo("cmd.exe", "/c cd / & /x & cd PROGRA~2 & cd Truvelo & cd DCM & start dcm.exe");
int exitCode;
using (Process proc = Process.Start(start))
{
proc.WaitForExit();
exitCode = proc.ExitCode;
}
Я пробовал что-то похожее, но я считаю, что это не сработало, так как я запустил приложение, используя другой процесс с использованием командной строки.
System.Diagnostics.Process[] proc = System.Diagnostics.Process.GetProcessesByName(sProcessName);
if (proc.Length > 0)
{
MessageBox.Show(String.Format("{0}is running!", sProcessName), sProcessName);
}
else
{
MessageBox.Show(String.Format("{0}is not running!", sProcessName), sProcessName);
}
Я надеюсь, что кто-то можетпомогите мне логически определить, закрыл ли я приложение или код, который я пишу, чтобы знать, когда приложение запущено, а затем сообщите мне, как только приложение закроется
Спасибо