Простой инсталлер, ожидание завершения процесса - C#
Формулировка задачи:
Всем доброго.
Пишу небольшой инсталлер, из которого надо установить два приложения (оба внешние, лежат в папке с exe-шником программы). Реализовываю выбор через радиобаттоны (первый - оба приложения, второй -первое, третий - второе)
И собственно вопрос - никак не удается реализовать ожидание в первом пункте (установка двух приложений) ожидания завершения установки первого
Все висит на буттонклике:
В общем runApp_1.WaitForExit() не работает. Второй процесс стартует сразу за мессадж боксом.
private void button1_Click(object sender, EventArgs e) { //Тут какбы все понятно - переменной myInstaller_1 присваиваем //имя файла из которого он будет установлен string myInstaller_1 = "./Soft/MyApp_1.exe"; //Тоже самое для myInstaller_2 string myInstaller_2 = "./Soft/MyApp_2.exe"; //тут мы проверяем - хочет ли пользователь установить MyApp_1 и MyApp_2 if (radioButton1.Checked == true) { MessageBox.Show("Ставим MyApp_1!\n");//Для отладки Process runApp_1 = new System.Diagnostics.Process(); runApp_1.StartInfo.FileName = myInstaller_1; runApp_1.Start(); runApp_1.WaitForExit(); MessageBox.Show("Ставим MyApp_2!\n");//Для отладки Process runApp_2 = new System.Diagnostics.Process(); runApp_2.StartInfo.FileName = myInstaller_2; runApp_2.Start(); } //Только MyApp_1 if (radioButton2.Checked == true) { MessageBox.Show("Ставим MyApp_1!\n"); Process runApp_1 = new System.Diagnostics.Process(); runApp_1.StartInfo.FileName = myInstaller_1; runApp_1.Start(); } //Только MyApp_2 if (radioButton3.Checked == true) { MessageBox.Show("Ставим Агент!\n"); Process runApp_2 = new System.Diagnostics.Process(); runApp_2.StartInfo.FileName = myInstaller_2; runApp_2.Start(); }
Решение задачи: «Простой инсталлер, ожидание завершения процесса»
textual
Листинг программы
start /wait %*
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д