fonction CM_Get_Child_Ex (cfgmgr32.h)
[À compter de Windows 8 et Windows Server 2012, cette fonction a été déconseillée. Utilisez CM_Get_Child à la place.]
La fonction CM_Get_Child_Ex est utilisée pour récupérer un appareil instance gérer sur le premier nœud enfant d’un nœud d’appareil (devnode) spécifié dans l’arborescence d’appareils d’un ordinateur local ou distant.
Syntaxe
CMAPI CONFIGRET CM_Get_Child_Ex(
[out] PDEVINST pdnDevInst,
[in] DEVINST dnDevInst,
[in] ULONG ulFlags,
[in, optional] HMACHINE hMachine
);
Paramètres
[out] pdnDevInst
Pointeur fourni par l’appelant vers l’appareil instance gérer vers le nœud enfant que cette fonction récupère. Le handle récupéré est lié au handle de machine fourni par hMachine. Consultez la section Remarques .
[in] dnDevInst
L’appareil fourni par l’appelant instance handle lié au handle de machine fourni par hMachine.
[in] ulFlags
Non utilisé, doit être égal à zéro.
[in, optional] hMachine
Handle d’ordinateur fourni par l’appelant auquel le handle de instance d’appareil fourni par l’appelant est lié.
Valeur retournée
Si l’opération réussit, la fonction retourne CR_SUCCESS. Sinon, il retourne l’un des codes d’erreur CR_ préfixés définis dans Cfgmgr32.h.
Remarques
Pour énumérer tous les enfants d’un devnode dans une arborescence d’appareil locale ou distante, appelez d’abord CM_Get_Child_Ex pour obtenir un handle au premier nœud enfant, puis appelez CM_Get_Sibling_Ex pour obtenir des handles pour le reste des enfants.
Utilisation de handles d’instance d’appareil
Les instance d’appareil que vous utilisez avec les fonctions du gestionnaire de configuration PnP sont liées aux handles d’ordinateur, comme suit :
- Tous les handles de instance d’appareil local sont liés à un handle d’ordinateur local de valeur NULL.
- Si vous utilisez un handle d’ordinateur distant pour obtenir un handle d’appareil instance, le handle de instance d’appareil distant résultant est lié au handle d’ordinateur distant.
- Un périphérique instance handle ne peut être utilisé qu’avec le handle de machine auquel il est lié.
- Un handle de instance d’appareil ne peut être utilisé avec un autre instance de périphérique que si les deux poignées de instance d’appareil sont liées au même handle d’ordinateur.
Pour obtenir un périphérique local ou distant instance gérer, effectuez l’une des opérations suivantes.
- Utilisez l’une des fonctions suivantes pour récupérer un périphérique instance handle lié à l’ordinateur local : CM_Locate_DevNode, CM_Get_Child, CM_Get_Parent ou CM_Get_Sibling.
- Utilisez l’une des fonctions suivantes pour récupérer un périphérique instance handle lié à un ordinateur local ou distant : CM_Locate_DevNode_Ex, CM_Get_Child_Ex, CM_Get_Parent_Ex ou CM_Get_Sibling_Ex.
- Obtenez un jeu d’informations sur l’appareil.
- Obtenez une structure de SP_DEVINFO_DATA pour un instance d’appareil dans l’ensemble d’informations de l’appareil.
- Obtenez le handle instance de l’appareil pour le instance de l’appareil à partir du membre DevInst de la structure SP_DEVINFO_DATA.
- Obtenez le handle de machine auquel le handle instance d’appareil est lié. Un handle d’appareil instance obtenu à partir d’un jeu d’informations d’appareil est lié au handle d’ordinateur auquel le jeu d’informations d’appareil est lié. Vous obtenez le handle de machine pour un jeu d’informations d’appareil à partir du membre RemoteMachineHandle de sa structure SP_DEVINFO_LIST_DETAIL_DATA . (Appelez SetupDiGetDeviceInfoListDetail pour obtenir une structure SP_DEVINFO_LIST_DETAIL_DATA.)
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Microsoft Windows 2000 et versions ultérieures de Windows. |
Plateforme cible | Desktop (Expérience utilisateur) |
En-tête | cfgmgr32.h (inclure Cfgmgr32.h) |
Bibliothèque | Cfgmgr32.lib |
DLL | Cfgmgr32.dll |