Перезагрузки системы
Установщик Windows может определить, когда требуется перезагрузка системы, и автоматически предлагать пользователю выполнить перезагрузку по окончании установки. Например, установщик автоматически запрашивает перезагрузку, если ему нужно заменить все файлы, используемые во время установки.
Приложения, использующие установщик Windows версии 4.0 или более поздней для установки и обслуживания, автоматически используют диспетчер перезапусков для сокращения количества перезапусков системы. Установщик Windows версии 4.0 или более поздней содержит свойства и политики, позволяющие автору пакета и администраторам управлять взаимодействием установщика Windows с диспетчером перезапуска. Дополнительные сведения см. в статье Использование установщика Windows с диспетчером перезапуска.
Авторы пакетов установки могут планировать и подавлять перезагрузки с помощью стандартных действий в таблицах последовательностей и путем задания свойств. Для обработки перезагрузок системы используются следующие действия и свойства.
Действие, диалоговое окно или свойство | Краткое описание |
---|---|
Принудительная перезагрузка | Запрашивает перезагрузку пользователя во время установки. |
Действие "Запланировать перезагрузку" | Запрашивает перезагрузку пользователя в конце установки. |
Свойство REBOOT | Принудительно или подавляет определенные автоматические запросы на перезагрузку системы. |
СВОЙСТВО REBOOTPROMPT | Подавляет отображение пользователю запросов на перезагрузку. Все необходимые перезагрузки выполняются автоматически. |
СВОЙСТВО AFTERREBOOT | Обычно используется в условии, налагаемом на действие принудительной перезагрузки. |
Действие InstallValidate | Отображает диалоговое окно FilesInUse, при необходимости предоставляющее пользователям возможность завершить процессы и избежать некоторых перезагрузок системы. |
Диалоговое окно FilesInUse | Предоставляет пользователям возможность завершить процессы, чтобы избежать некоторых перезагрузок системы. |
Диалоговое окно MsiRMFilesInUse | Предоставляет пользователям возможность использовать диспетчер перезапуска для закрытия и перезапуска приложений. Доступно начиная с установщика Windows версии 4.0. |
Свойство ReplacedInUseFiles | Установите значение , если установщик выполняет установку по используемому файлу. Это свойство используется пользовательскими действиями для обнаружения необходимости перезагрузки. |
MSIRESTARTMANAGERCONTROL | Свойство для отключения взаимодействия установщика Windows с диспетчером перезапуска. Доступно начиная с установщика Windows версии 4.0. |
MSIDISABLERMRESTART | Указывает, как диспетчер перезапуска закрывает и перезапускает приложения. Доступно начиная с установщика Windows версии 4.0. |
MSIRMSHUTDOWN | Указывает, как диспетчер перезапуска закрывает и перезапускает приложения. Доступно начиная с установщика Windows версии 4.0. |
MsiSystemRebootPending | Установщик задает это свойство, если ожидается перезагрузка операционной системы. Доступно начиная с установщика Windows версии 4.0. |
DisableAutomaticApplicationShutdown | Политика для отключения взаимодействия установщика Windows с диспетчером перезапуска. Доступно начиная с установщика Windows версии 4.0. |
ERROR_INSTALL_SUSPEND означает, что установка не завершена или не выполнена откат. Установка должна быть возобновлена до ее завершения. Перед возобновлением установки может потребоваться перезагрузка системы.
Установщик Windows возвращает код ошибки ERROR_INSTALL_SUSPEND при выполнении действия принудительной перезагрузки . Он возвращает ERROR_SUCCESS_REBOOT_REQUIRED, если требуется перезагрузка перед запуском приложения, и возвращает ERROR_SUCCESS_REBOOT_INITIATED, если установщик фактически запустил перезагрузку. Обратите внимание, что так как перезагрузки являются асинхронными, перезагрузка может произойти до возврата кода ошибки. Дополнительные сведения см. в разделе Коды ошибок.
Пользовательские действия могут принудительно запрашивать перезагрузку в конце установки путем вызова MsiSetMode. Пользовательские действия также могут проверка для ожидающего запроса на перезагрузку путем вызова MsiGetMode.
Диалоговое окно FilesInUse
Установщик может определить, когда требуется перезагрузка системы, и запросить у пользователя запрос на перезагрузку. Обычно требуется перезагрузка системы, так как установщик пытается установить файл, который используется в данный момент. Если действие InstallValidate обнаруживает установку используемого файла, отображается диалоговое окно FilesInUse.
Если вы ожидаете, что установщик отобразит файл FilesInUseDialog, но это не так, это может быть вызвано одной из следующих причин:
- Используемые файлы не являются исполняемыми файлами.
- Установщик на самом деле не пытается установить эти файлы.
- Процесс, содержащий эти файлы, является процессом, вызывающим установку.
- Процесс, содержащий эти файлы, не имеет окна с заголовком, связанным с ним.
Дополнительные сведения см. в разделе Ведение журнала запросов на перезагрузку.