Перезапустите поведение диспетчера с помощью установщика Windows

С установщиком Windows 4.0 и Restart Manager, можно ли предположить, что "Restart Manager" позаботится о закрытии приложений, и, следовательно, нет необходимости в каких-либо настраиваемых действиях для завершения процессов, содержащих файлы, предназначенные для обновления??

Существуют ли исключения, когда "Restart Manager" может не закрывать приложения? Конечно, я понимаю, что когда применяется такая политика, как DisableAutomaticApplicationShutdown, диспетчер перезапуска отключается.

Должен ли процесс, который должен быть завершен, удовлетворять некоторым критериям, чтобы можно было завершить работу с помощью Restart Manager?

Я запускаю мои MSI-пакеты без вывода сообщений.

Что я могу сделать, если MSI-пакет запрашивает перезагрузку, даже если включен "Restart Manager"?

Любой ответ будет очень признателен.

С уважением, Киран Хегде

1 ответ

Restart Manager - это, прежде всего, лучшая схема обнаружения (чем ранее) для обнаружения файлов, которые используются во время операции установки. Например, старая схема обнаруживала только запущенные приложения с окном верхнего уровня (исключая приложения в трее). Единственные приложения, которые автоматически закрываются и перезапускаются, это те, которые зарегистрировались для этого. По сути это означает, что ваше приложение вызывает RegisterApplicationRestart(), сообщая ему, с какой командной строки вы хотите перезапуститься. Приложение следит за сообщениями WM_QUERYENDSESSION, которые сообщают ему о том, что оно должно быть закрыто, и записывает информацию для восстановления для последующего перезапуска.

Пример здесь:

http://www.advancedinstaller.com/user-guide/qa-vista-restart-manager.html

Поэтому некоторые ваши вопросы не относятся, но, очевидно, смысл в том, чтобы предотвратить перезагрузку, независимо от того, установлена ​​она без вывода сообщений или нет. Если для установки без вывода сообщений требуется перезагрузка, она просто сделает это, потому что безмолвие действительно означает "безмолвие", спрашивать некого, и установка завершается только после перезагрузки.

Когда приложения не выполняют эту работу, люди обычно прибегают к таким вещам, как вызовы WiX Util CloseApplication, чтобы отключить их.

Обратите внимание, что службы, помеченные как "Остановить при установке" (или, в зависимости от обстоятельств, деинсталляции), не приводят к ситуациям при использовании файлов. Механизм обнаружения использования файлов игнорирует файлы, которые используются службами, помеченными для остановки в таблице ServiceControl. Так что с сервисами в целом все в порядке, но если сервис порождает другие процессы, это может привести к ситуациям при использовании файлов.

Другие вопросы по тегам