MsiExec прогресс улов

Я пишу небольшое приложение для установки одного продукта и удаления другого в режиме без вывода сообщений.
У каждого продукта есть MSI-файл и ничего более, и в манифесте моего приложения указано, что его следует запускать с правами администратора.
Это довольно легко запуститьmsiexec с правильными аргументами для выполнения моей задачи (просто куча кода) и все работает нормально.
В любом случае, завершение какого-либо пакета занимает много времени, и на некоторых старых компьютерах пользователь спрашивает, происходит ли что-то еще в фоновом режиме или зависает.
Так можно ли "поймать"msiexec прогресс и, например, обновить индикатор прогресса в моем приложении? Звучит безумно, но я уверен, что какой-то профессиональный установщик работает таким образом, запуская внешний MSI-пакет.
Так возможно ли это? Есть ли что-то, что мы можем сделать в C #, или это очень сложная задача, требующая большого количества знаний, которых у меня нет?

Просто примечание: я знаю, что мог бы использовать"/qb" param, но какой-то пакет ведет себя некорректно, и я не хочу его использовать.

Ответы на вопрос(2)

Ваш ответ на вопрос