Redémarrages du système

Windows Installer peut déterminer quand un redémarrage du système est nécessaire et inviter automatiquement l’utilisateur à redémarrer à la fin de l’installation. Par exemple, le programme d’installation demande automatiquement un redémarrage s’il doit remplacer les fichiers utilisés pendant l’installation.

Les applications qui utilisent la version 4.0 ou ultérieure de Windows Installer pour l’installation et la maintenance utilisent automatiquement le Gestionnaire de redémarrage pour réduire les redémarrages du système. Windows Installer version 4.0 ou ultérieure a des propriétés et des stratégies qui permettent à l’auteur du package et aux administrateurs de contrôler l’interaction de Windows Installer avec le Gestionnaire de redémarrage. Pour plus d’informations, consultez Utilisation de Windows Installer avec le Gestionnaire de redémarrage.

Les auteurs de packages d’installation peuvent planifier et supprimer des redémarrages à l’aide d’actions standard dans les tables de séquences et en définissant des propriétés. Les actions et propriétés suivantes sont utilisées pour gérer les redémarrages du système.

Action, boîte de dialogue ou propriété Brève description
Action ForceReboot Invite l’utilisateur à redémarrer pendant l’installation.
Action ScheduleReboot Invite l’utilisateur à redémarrer à la fin de l’installation.
Propriété REBOOT Force ou supprime certaines invites automatiques pour un redémarrage du système.
Propriété REBOOTPROMPT Supprime l’affichage des invites de redémarrage à l’utilisateur. Tous les redémarrages nécessaires se produisent automatiquement.
Propriété AFTERREBOOT Couramment utilisé dans une condition imposée à l’action ForcerReboot.
Action InstallValidate Affiche la boîte de dialogue FilesInUse, si nécessaire, ce qui donne aux utilisateurs la possibilité d’arrêter les processus et d’éviter certains redémarrages du système.
Boîte de dialogue FilesInUse Donne aux utilisateurs la possibilité d’arrêter les processus pour éviter certains redémarrages du système.
Boîte de dialogue MsiRMFilesInUse Donne aux utilisateurs la possibilité d’utiliser le Gestionnaire de redémarrage pour fermer et redémarrer des applications. Disponible à partir de Windows Installer version 4.0.
Propriété ReplacedInUseFiles Définissez si le programme d’installation s’installe sur un fichier en cours d’utilisation. Cette propriété est utilisée par les actions personnalisées pour détecter si un redémarrage est nécessaire.
MSIRESTARTMANAGERCONTROL Propriété permettant de désactiver l’interaction de Windows Installer avec le Gestionnaire de redémarrage. Disponible à partir de Windows Installer version 4.0.
MSIDISABLERMRESTART Spécifie comment le Gestionnaire de redémarrage ferme et redémarre les applications. Disponible à partir de Windows Installer version 4.0.
MSIRMSHUTDOWN Spécifie comment le Gestionnaire de redémarrage ferme et redémarre les applications. Disponible à partir de Windows Installer version 4.0.
MsiSystemRebootPending Le programme d’installation définit cette propriété si un redémarrage du système d’exploitation est en attente. Disponible à partir de Windows Installer version 4.0.
DisableAutomaticApplicationShutdown Stratégie pour désactiver l’interaction de Windows Installer avec le Gestionnaire de redémarrage. Disponible à partir de Windows Installer version 4.0.

 

ERROR_INSTALL_SUSPEND signifie que l’installation n’a pas été terminée ou que la restauration n’a pas été restaurée. L’installation doit reprendre avant d’être terminée. Le système doit peut-être être redémarré avant que l’installation puisse reprendre.

Windows Installer renvoie le code d’erreur ERROR_INSTALL_SUSPEND lorsque l’action ForceReboot est exécutée. Il renvoie ERROR_SUCCESS_REBOOT_REQUIRED si un redémarrage est nécessaire avant d’exécuter l’application, et renvoie ERROR_SUCCESS_REBOOT_INITIATED si le programme d’installation a réellement démarré un redémarrage. Notez que, étant donné que les redémarrages sont asynchrones, le redémarrage peut se produire avant que le code d’erreur ne soit renvoyé. Pour plus d’informations, consultez Codes d’erreur.

Les actions personnalisées peuvent forcer une invite de redémarrage à la fin d’une installation en appelant MsiSetMode. Les actions personnalisées peuvent également vérifier la présence d’une invite de redémarrage en attente en appelant MsiGetMode.

Boîte de dialogue FilesInUse

Le programme d’installation peut déterminer quand un redémarrage du système est nécessaire et demander à l’utilisateur de redémarrer. En règle générale, un redémarrage du système est nécessaire, car le programme d’installation tente d’installer un fichier actuellement utilisé. Si l’action InstallValidate détecte l’installation d’un fichier en cours d’utilisation, elle affiche la boîte de dialogue FilesInUse.

Si vous vous attendez à ce que le programme d’installation affiche un fichier FilesInUseDialog, mais que ce n’est pas le cas, cela peut être dû à l’une des raisons suivantes :

  • Les fichiers utilisés ne sont pas des exécutables.
  • Le programme d’installation n’essaie pas réellement d’installer ces fichiers.
  • Le processus contenant ces fichiers est le processus appelant l’installation.
  • Le processus contenant ces fichiers est celui qui n’a pas de fenêtre avec un titre associé.

Pour plus d’informations, consultez Journalisation des demandes de redémarrage.