Мы работаем над системой обновлений для нашего программного обеспечения. Программа обновления должна работать в фоновом режиме как служба, а когда доступно обновление, загрузите и установите его. Нам нужна служба для установки обновления, так как MSI требует запуска высоты, но некоторые из наших клиентов будут ограничены пользователями.
MSI представляет собой WiX MSI и выполняет основное обновление при запуске. Проблема в том, что обновление не работает при запуске нашей службы. Я вижу, что msiexec запускается, и он возвращается успешно, но, похоже, не вносит никаких изменений в систему. Эта же команда, когда выполняется из моей учетной записи пользователя, работает так, как ожидалось.
Есть ли какое-то предостережение для запуска msiexec из службы локальной системы?
Мы просто делаем:
string arguments = "/i /quiet /lv*x " + pathToLogFile;
System.Diagnostics.Process.Start("msiexec.exe", arguments);