У меня проблема с развертыванием MSI, над которым я работаю (с использованием InstallShield). У нас есть программа, работающая в фоновом режиме, которая должна запускаться для каждого пользователя, и она должна запускаться автоматически без вмешательства пользователя.Остановка MSI от запуска EXE в контексте SYSTEM
Проблема заключается в развертывании приложения Group Policy Object/Active Directory (GPO/AD), когда приложение запускается в контексте SYSTEM, прежде чем кто-либо войдет в систему, а не как пользователь, который вот-вот войдет в систему. Приложение может запускаться только один раз для пользователя , и кажется, что процесс SYSTEM не запускает процесс USER. Это означает, что ПК необходимо перезагрузить дважды, прежде чем программное обеспечение может быть развернуто для пользователей. Как нам остановить это?
В основном текущий рабочий процесс:
- Установка/обновление пробегов ... убить фоновое приложение
- Установить новые файлы
- запуска фоновое приложение
Это работает для опубликованных приложений и interactive MSI установки - это только «назначенные» приложения, которые, похоже, имеют проблему. Поскольку шаг 3 происходит в контексте SYSTEM, а не в контексте пользователя :(
В идеале, у меня была бы команда разработчиков, исправляющая EXE-файл, чтобы предотвратить запуск в контексте SYSTEM, но это цикл выпуска, м ищет инсталлятор на основе решения промежуточного.
(я не знаю InstallScript ... Так что я предполагаю, VBScript, вероятно, путь, если нет родной InstallShield вещи я могу использовать.)
Только что добавил это в наш последний выпуск (заменив мой код ниже) - работает как шарм! Спасибо :) – saschabeaumont
было бы здорово, если бы вы могли объяснить, как это сделать более подробно. –