Поделиться через


Перезагрузки системы

Установщик Windows может определить, когда требуется перезагрузка системы и автоматически запрашивать перезагрузку пользователя в конце установки. Например, установщик автоматически запрашивает перезагрузку, если он должен заменить все файлы, используемые во время установки.

Приложения, использующие установщика Windows версии 4.0 или более поздней для установки и обслуживания, автоматически используют Диспетчер перезапуска для уменьшения перезагрузки системы. Установщик Windows версии 4.0 или более поздней содержит свойства и политики, позволяющие автору пакета и администраторам управлять взаимодействием установщика Windows с диспетчером перезапуска. Дополнительные сведения см. в разделе Использование установщика Windows сдиспетчера перезапуска.

Авторы пакетов установки могут планировать и подавлять перезагрузки с помощью стандартных действий в таблицах последовательности и путем задания свойств. Для обработки перезагрузки системы используются следующие действия и свойства.

Действие, диалоговое окно или свойство Краткое описание
ForceReboot Action Запрашивает пользователю перезагрузку во время установки.
действия scheduleReboot Запрашивает у пользователя перезагрузку в конце установки.
свойстваREBOOT Принудительно или подавляет определенные автоматические запросы на перезагрузку системы.
свойстваREBOOTPROMPT Подавляет отображение запросов на перезагрузку пользователю. Все необходимые перезагрузки выполняются автоматически.
свойство AFTERREBOOT Обычно используется в условии, наложенном на действие ForceReboot.
действие 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 при запуске действия ForceReboot . Он возвращает ERROR_SUCCESS_REBOOT_REQUIRED, если перезагрузка требуется перед запуском приложения, и она возвращает ERROR_SUCCESS_REBOOT_INITIATED, если установщик фактически начал перезагрузку. Обратите внимание, что, поскольку перезагрузка асинхронна, перезагрузка может произойти до возврата кода ошибки. Дополнительные сведения см. в разделе Коды ошибок.

Пользовательские действия могут принудительно выполнить перезагрузку в конце установки, вызвав MsiSetMode. Пользовательские действия также могут проверять запрос на ожидающие перезагрузки, вызвав MsiGetMode.

Диалоговое окно FilesInUse

Установщик может определить, когда требуется перезагрузка системы, и попросите пользователя отправить запрос на перезагрузку. Обычно требуется перезагрузка системы, так как установщик пытается установить используемый в данный момент файл. Если действие installValidate обнаруживает установку файла, используемого в нем, отобразится диалоговое окно FilesInUse.

Если вы ожидаете, что установщик отобразит файл FilesInUseDialog, но это не так, это может быть вызвано одной из следующих причин:

  • Используемые файлы не являются исполняемыми файлами.
  • Установщик на самом деле не пытается установить эти файлы.
  • Процесс хранения этих файлов — это процесс, вызывающий установку.
  • Процесс хранения этих файлов — это тот, который не имеет окна с заголовком, связанным с ним.

Дополнительные сведения см. в разделе ведение журнала запросов перезагрузки.