Share via


fonction CM_Get_Device_Interface_AliasA (cfgmgr32.h)

La fonction CM_Get_Device_Interface_Alias retourne l’alias de l’interface d’appareil spécifiée instance, si l’alias existe.

Syntaxe

CMAPI CONFIGRET CM_Get_Device_Interface_AliasA(
  [in]      LPCSTR pszDeviceInterface,
  [in]      LPGUID AliasInterfaceGuid,
  [out]     LPSTR  pszAliasDeviceInterface,
  [in, out] PULONG pulLength,
  [in]      ULONG  ulFlags
);

Paramètres

[in] pszDeviceInterface

Pointeur vers le nom de l’interface de l’appareil instance pour lequel récupérer un alias. L’appelant a généralement reçu cette chaîne d’un appel à CM_Get_Device_Interface_List ou dans une structure de notification PnP.

[in] AliasInterfaceGuid

Pointeur vers un GUID spécifiant la classe d’interface de l’alias à récupérer.

[out] pszAliasDeviceInterface

Spécifie un pointeur vers une mémoire tampon, qui, en cas de retour réussi, pointe vers une chaîne contenant le nom de l’alias. L’appelant doit libérer cette chaîne quand elle n’est plus nécessaire.

Une mémoire tampon est requise. Sinon, l’appel échoue.

[in, out] pulLength

Fournit le nombre de caractères dans pszAliasDeviceInterface et reçoit le nombre de caractères requis pour contenir l’interface de périphérique d’alias.

En entrée, ce paramètre doit être supérieur à 0.

[in] ulFlags

Réservé. Ne pas utiliser.

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.

Code de retour Description
CR_NO_SUCH_DEVICE_INTERFACE
Indique peut-être qu’il n’existe aucun alias de la classe d’interface spécifiée.
CR_OUT_OF_MEMORY
La mémoire disponible est insuffisante pour terminer cette opération.
CR_BUFFER_SMALL
La mémoire tampon passée est trop petite.

Remarques

Les interfaces d’appareil sont considérées comme des alias si elles sont exposées par le même appareil sous-jacent et ont des chaînes de référence d’interface identiques, mais qu’elles sont de classes d’interface différentes.

Le paramètre pszDeviceInterface spécifie une interface d’appareil instance pour un appareil particulier, appartenant à une classe d’interface particulière, avec une chaîne de référence particulière. CM_Get_Device_Interface_Alias retourne une autre interface d’appareil instance pour le même appareil et la même chaîne de référence, mais d’une classe d’interface différente, le cas échéant.

Par exemple, le pilote de fonction pour un volume à tolérance de pannes peut inscrire et définir deux interfaces d’appareil, l’une de la classe d’interface de volume à tolérance de pannes et l’une de la classe d’interface de volume. Un autre pilote peut appeler CM_Get_Device_Interface_Alias avec le lien symbolique pour l’une des interfaces et demander si l’autre interface existe en spécifiant sa classe d’interface.

Deux interfaces d’appareil avec des chaînes de référence NULL sont des alias s’ils sont exposés par le même appareil sous-jacent et ont des GUID de classe d’interface différents.

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