У меня есть .exe-файл, который проверяет системную архитектуру и на основе системной архитектуры вызывает соответствующий msi-файл.C# - Выполнение exe-файла, который дополнительно вызывает файл msi
Я пытаюсь запустить этот исполняемый файл из C# с помощью кода ниже
Process process = new Process();
process.StartInfo.FileName = "my.exe";
process.StartInfo.Arguments = "/quiet";
process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;
process.StartInfo.WorkingDirectory = "path//to//exe//directory";
Console.WriteLine(process.StartInfo.WorkingDirectory);
process.Start();
process.WaitForExit();
ехе становится вызван. я вижу журналы приложений и ошибок в журналах нет.
Но msi не запускается и не устанавливается. Когда я пытаюсь запустить один и тот же файл exe вручную, устанавливается msi.
Примечание. Для этого my.exe имеются другие файлы зависимостей, которые помещаются в один каталог.
Почему я не могу установить msi из программы C#, пока я могу сделать это вручную.
Я запускаю VisualStudios в режиме администратора.
Хотя это работает, я все еще не могу понять, почему это работает. Я понимаю, что процесс был убит еще до того, как была запущена установка msi. Но было бы здорово, если бы у меня было более подробное выдворение. – user2048204