DIF_PROPERTYCHANGE
Une demande de DIF_PROPERTYCHANGE avertit le programme d’installation que les propriétés de l’appareil sont modifiées. L’appareil est activé, désactivé, démarré, arrêté ou un élément d’une page de propriétés a changé. Cette demande DIF permet au programme d’installation de participer à la modification.
Date d’envoi
Lorsqu’un appareil est activé, désactivé, redémarré, arrêté ou ses propriétés ont changé.
Par exemple, Windows envoie cette demande lorsqu’un fournisseur de pages de propriétés définit l’indicateur DI_FLAGSEX_PROPCHANGE_PENDING dans le champ FlagsEx de la structure SP_DEVINSTALL_PARAMS de l’appareil.
Pour plus d’informations sur la détection du démarrage d’un appareil pour la première fois ou du redémarrage ultérieur, consultez la section Opération du programme d’installation.
Qui gère
Co-programme d’installation de classe |
Peut gérer |
Co-programme d’installation d’appareil |
Peut gérer |
Programme d’installation de classe |
Peut gérer |
Entrée du programme d’installation
DeviceInfoSet
Fournit un handle au jeu d’informations de l’appareil qui contient l’appareil.
DeviceInfoData
Fournit un pointeur vers une structure de SP_DEVINFO_DATA pour l’appareil dans le jeu d’informations de l’appareil.
Paramètres d’installation de l’appareil
Des paramètres d’installation d’appareil (SP_DEVINSTALL_PARAMS) sont associés à DeviceInfoData.
Paramètres d’installation de classe
Une structure SP_PROPCHANGE_PARAMS est associée à DeviceInfoData.
Sortie du programme d’installation
Valeur de retour du programme d’installation
Un co-programme d’installation peut retourner NO_ERROR, ERROR_DI_POSTPROCESSING_REQUIRED ou un code d’erreur Win32.
Si un programme d’installation de classe gère correctement cette demande et que SetupDiCallClassInstaller doit ensuite appeler le gestionnaire par défaut, le programme d’installation de classe retourne ERROR_DI_DO_DEFAULT.
Si le programme d’installation de classe gère correctement cette demande, notamment en appelant directement le gestionnaire par défaut, le programme d’installation de classe doit retourner NO_ERROR et SetupDiCallClassInstaller n’appellera plus le gestionnaire par défaut par la suite.
Note Le programme d’installation de classe peut appeler directement le gestionnaire par défaut, mais le programme d’installation de classe ne doit jamais tenter de remplacer les opérations du gestionnaire par défaut.
Pour plus d’informations sur l’appel du gestionnaire par défaut, consultez Appel de gestionnaires de code DIF par défaut.
Si le programme d’installation de classe rencontre une erreur, le programme d’installation doit retourner un code d’erreur Win32 approprié et SetupDiCallClassInstaller n’appellera pas par la suite le gestionnaire par défaut.
Gestionnaire de code DIF par défaut
Opération du programme d’installation
En réponse à une demande de DIF_PROPERTYCHANGE, un programme d’installation peut participer à l’opération de modification de propriété. Les paramètres d’installation de classe (SP_PROPCHANGE_PARAMS) indiquent la modification en cours.
Une modification de propriété peut nécessiter un redémarrage du système. Pour plus d’informations sur le redémarrage du système, consultez SetupDiCallClassInstaller.
Lorsque Windows envoie une DIF_INSTALLDEVICE demande d’installation d’un appareil pour la première fois, Windows démarre l’appareil, mais n’envoie pas de requête DIF_PROPERTYCHANGE dans le cadre de l’installation. Si une opération d’installation personnalisée doit être effectuée lorsqu’un appareil est démarré pour la première fois et chaque fois que l’appareil est redémarré par la suite, un programme d’installation ou un co-programme d’installation doit gérer la DIF_INSTALLDEVICE demande qui démarre l’appareil pour la première fois et une demande DIF_PROPERTYCHANGE qui indique que l’action de changement d’état est que l’appareil est en cours de démarrage.
Pour plus d’informations sur les codes DIF, consultez Gestion des codes DIF.
Spécifications
Version |
Pris en charge dans Microsoft Windows 2000 et versions ultérieures de Windows. |
En-tête |
Setupapi.h (inclure Setupapi.h) |