Partager via


AVC_FUNCTION_PEER_DO_LIST

Le code de fonction AVC_FUNCTION_PEER_DO_LIST localise toutes les instances deavc.sys non virtuelles.

Bloc d’état E/S

En cas de réussite, le pilote de protocole AV/C définit Irp-IoStatus.Status> sur STATUS_SUCCESS.

Les autres valeurs de retour possibles sont les suivantes :

Valeur retournée Description
STATUS_INSUFFICIENT_RESOURCES Impossible d’obtenir de l’espace pour la liste des références d’objets d’appareil.

Commentaires

Cette fonction utilise le membre PeerList de la structure AVC_MULTIFUNC_IRB comme indiqué ci-dessous.

typedef struct _AVC_MULTIFUNC_IRB {
  AVC_IRB  Common;
  union {
    .
    .
    .
    AVC_PEER_DO_LIST PeerList;
 .
    .
    .
  };
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;

Spécifications

En-têtes: Déclaré dans avc.h. Incluez avc.h.

entrée AVC_MULTIFUNC_IRB

Commun
Le sous-membre Function de ce membre doit être défini sur AVC_FUNCTION_PEER_DO_LIST à partir de l’énumération AVC_FUNCTION.

PeerList
Spécifie une liste de toutes les instances non virtuelles (homologues) de avc.sys.

L’appelant peut envoyer GUID_AVC_CLASS demandes d’interface d’appareil via l’un des objets retournés dans la liste des objets. L’appelant doit libérer les références à ces objets (via ObDereferenceObject) et libérer la mémoire contenant la liste (via ExFreePool) lorsque vous avez terminé.

Ce code de fonction peut être appelé dans IRQL >= DISPATCH_LEVEL.

Voir aussi

AVC_MULTIFUNC_IRB

AVC_PEER_DO_LIST

AVC_FUNCTION

DEVICE_OBJECT

ObDereferenceObject

ExFreePool