Remarque
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de vous connecter ou de modifier des répertoires.
L’accès à cette page nécessite une autorisation. Vous pouvez essayer de modifier des répertoires.
SetupAPI est un composant système qui fournit différents ensembles de fonctionnalités, notamment les fonctions d’installation de l’appareil.
Les applications d’installation d’appareils, les co-programmes d’installation et les programmes d’installation de classes peuvent utiliser ces fonctions pour effectuer des opérations personnalisées pour l’installation de l’appareil. SetupAPI prend également en charge la désinstallation des appareils et des packages de pilotes qu’il installe.
Cette rubrique décrit les procédures que vous pouvez suivre pour désinstaller des appareils et des packages de pilotes à l’aide des fonctions SetupAPI.
Pour plus d’informations sur la désinstallation des packages de pilotes et de pilotes, consultez La procédure de désinstallation des périphériques et des packages de pilotes.
Désinstallation de l’appareil
SetupAPI vous permet de désinstaller un appareil et de supprimer le nœud d’appareil (devnode) du système à l’aide des méthodes suivantes :
Une application d’installation d’appareil peut demander qu’un appareil soit désinstallé en appelant la fonction SetupDiCallClassInstaller. Lorsque l’application appelle cette fonction pour désinstaller un appareil, elle doit définir le paramètre InstallFunction sur le code DIF_REMOVE. Pour obtenir la liste de tous les codes DIF, consultez Fonctions d’installation d’appareil.
Si SetupDiRemoveDevice est appelé pendant le traitement de la requête DIF_REMOVE, la fonction supprime le devnode de l’appareil du système. Il supprime également les clés de Registre matérielle et logicielle de l’appareil, ainsi que toutes les clés de Registre spécifiques au profil matériel (clés de Registre spécifiques à la configuration).
Notezque SetupDiRemoveDevice doit uniquement être appelé par un programme d’installation de classe et non par une application d’installation d’appareil.
Pour plus d’informations sur les codes DIF, consultez Gestion des codes DIF.
À compter de Windows 7, une application d’installation d’appareil peut désinstaller un appareil en appelant la fonction DiUninstallDevice. Cette fonction est similaire à l’appel de SetupDiCallClassInstaller avec le paramètre InstallFunction défini sur DIF_REMOVE. Toutefois, en plus de supprimer le devnode de l’appareil spécifié, cette fonction tente de supprimer tous les devnodes enfants de l’appareil présents sur le système au moment de l’appel.
Suppression d’un package de pilotes dans le magasin de pilotes
À compter de Windows XP, une application d’installation d’appareil peut appeler la fonction SetupUninstallOEMInf pour supprimer un fichier INF spécifié du répertoire de fichiers INF système.
À compter de Windows Vista, cette fonction supprime également le package de pilotes, qui contient le fichier INF spécifié, dans le Magasin des pilotes.
Vous pouvez également appeler DiUninstallDriver pour supprimer un package de pilotes du magasin de pilotes.
Pour plus d’informations sur la suppression d’un package de pilotes dans le magasin de pilotes, consultez Suppression d’un package de pilotes du magasin de pilotes.
Suppression des fichiers binaires du pilote installé
SetupAPI ne peut pas être utilisé pour effectuer cette action.