Partager via


Exécution d’actions Finish-Install

Notes

Les fonctionnalités décrites dans cette section ne sont pas prises en charge dans les packages de pilotes universels ou mobiles. Consultez Utilisation d’un fichier INF universel.

Dans Windows 8 et les versions ultérieures de Windows, les actions de fin d’installation ne s’exécutent pas automatiquement dans le cadre de l’installation de l’appareil. Lorsqu’un appareil est installé avec un pilote qui inclut une action terminer-installer, l’action terminer-installer ne s’exécute pas automatiquement. Au lieu de cela, Windows invite un utilisateur à « Terminer l’installation du logiciel de l’appareil » dans la zone Notifications ou dans le Centre de notifications Windows. L’installation d’un logiciel d’appareil nécessite des autorisations d’administrateur. Si l’installation échoue, le logiciel doit inviter l’utilisateur à réessayer l’installation. L’installation d’un logiciel de prise en charge qui doit accompagner un pilote peut toujours être effectuée avec une action terminer-installer, mais elle ne sera pas installée automatiquement.

Avant Windows 8, si un appareil est marqué comme devant effectuer une action terminer-installer, Windows tente initialement d’effectuer les actions terminer-installer en exécutant un processus de fin-installation à l’un des moments suivants :

  • Pour un appareil installé pendant l’installation de Windows, la première fois qu’un administrateur se connecte à Windows une fois l’installation de Windows terminée.

  • Pour un appareil installé ou réinstallé après l’installation de Windows, une fois les opérations d’installation de l’appareil de base terminées, comme suit :

    • Pour une installation matérielle d’un appareil, Windows exécute le processus initial de fin-installation. Si l’utilisateur actuel n’est pas administrateur, Windows invite d’abord l’utilisateur à entrer les informations d’identification d’un administrateur avant d’exécuter le processus initial de fin-installation.

    • Pour une installation logicielle d’un appareil, Windows exécute le processus initial de fin-installation dans le contexte de l’administrateur qui a lancé l’installation ou la réinstallation.

Avant Windows 8, si la tentative initiale d’exécution des actions terminer-installer réussit, le processus de fin-installation efface l’appareil comme étant marqué pour effectuer une action terminer l’installation. Si la tentative initiale d’exécution des actions de fin d’installation échoue, le processus de fin-installation n’efface pas l’appareil comme étant marqué pour effectuer une action terminer l’installation et se ferme. Par la suite, alors que l’appareil reste marqué pour effectuer une action terminer l’installation, Windows tente à plusieurs reprises d’effectuer les actions terminer-installer en exécutant un nouveau processus de fin-installation chaque fois que l’appareil est énuméré, comme suit :

  • Pendant que l’appareil reste installé, la prochaine fois qu’un administrateur se connecte.

  • Si un administrateur clique sur Rechercher les modifications matérielles dans le menu Action de Gestionnaire de périphériques ou qu’un programme d’installation appelle CM_Reenumerate_DevNode dans le contexte d’un administrateur.

Si l’appareil est marqué pour effectuer une action terminer-installer, le processus de fin-installation appelle SetupDiCallClassInstaller pour envoyer une demande de DIF_FINISHINSTALL_ACTION aux programmes d’installation de l’appareil.

Si un programme d’installation a des actions terminer-installer, le programme d’installation effectue des actions terminer-installer et retourne un code d’erreur approprié pour la demande DIF_FINISHINSTALL_ACTION . Un programme d’installation retourne l’un des codes d’erreur du tableau suivant.

Code d'erreur Signification

ERROR_DI_DO_DEFAULT

Programme d’installation de classe : le programme d’installation de classe a correctement exécuté ses actions de fin d’installation et demande à Windows d’effectuer son traitement par défaut.

Le programme d’installation de classe retourne également ce code d’erreur s’il n’a aucune action terminer-installer, ou si une action terminer-installer échoue et ne doit pas être tentée à nouveau.

Co-programme d’installation d’appareil ou de classe : les co-programmes d’installation ne retournent pas ce code d’erreur.

NO_ERROR

Programme d’installation de classe : le programme d’installation de classe a correctement exécuté son action terminer-installer. Windows ne doit pas effectuer son traitement par défaut.

Co-programme d’installation d’appareil ou de classe : le co-programme d’installation a correctement exécuté ses actions de fin-installation ou n’a aucune action terminer-installer.

Le co-programme d’installation retourne également ce code d’erreur si une action terminer-installer échoue et ne doit pas être tentée à nouveau.

Erreur Microsoft Win32

Le programme d’installation de classe, le co-programme d’installation d’appareil ou le co-programme d’installation de classe a rencontré une erreur lors du traitement d’une action terminer-installer, mais doit tenter de traiter à nouveau l’action terminer-installer.

En retournant un code d’erreur Win32, le programme d’installation indique que Windows doit exécuter un autre processus de fin-installation pour terminer les actions de fin d’installation la prochaine fois que l’appareil est énuméré. Le programme d’installation doit également informer l’utilisateur de cette situation.