AVC_FUNCTION_GET_UNIQUE_ID
Le code de fonction AVC_FUNCTION_GET_UNIQUE_ID obtient l’ID unique de l’unité AV/C.
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_TIMEOUT | La demande a été faite, mais aucune réponse n’a été reçue avant la fin du délai d’attente et le traitement des nouvelles tentatives. |
STATUS_REQUEST_ABORTED | Abandon immédiat lorsque le status d’achèvement IRP est STATUS_REQUEST_ABORTED. Cela indique que l’appareil a été supprimé ou n’est plus disponible sur le bus 1394. |
STATUT_* | Tout autre code de retour indique qu’une erreur ou un avertissement s’est produit au-delà de l’étendue du protocole AV/C. |
Commentaires
Cette fonction utilise le membre UniqueID de la structure AVC_MULTIFUNC_IRB comme indiqué ci-dessous.
typedef struct _AVC_MULTIFUNC_IRB {
AVC_IRB Common;
union {
.
.
.
AVC_UNIQUE_ID UniqueID;
.
.
.
};
} AVC_MULTIFUNC_IRB, *PAVC_MULTIFUNC_IRB;
Les membres de la structure AVC_UNIQUE_ID sont indiqués ci-dessous :
typedef struct _AVC_UNIQUE_ID {
OUT GUID DeviceID;
} AVC_UNIQUE_ID, *PAVC_UNIQUE_ID;
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_GET_UNIQUE_ID à partir de l’énumération AVC_FUNCTION.
Uniqueid
Spécifie un GUID représentant l’unité dans son ensemble. Toutes les sous-unités au sein d’une même unité partagent le même GUID. Deux unités ne partagent pas le même GUID.
Ce code de fonction n’est pas pris en charge par les instances virtuelles de avc.sys.
Le pilote de sous-unité utilise cette fonction s’il doit signaler le GUID d’appareil à une application de contrôle (une application qui doit savoir laquelle des nombreuses instances de pilotes de sous-unité appartiennent à la même unité) ou s’il crée ses propres structures AVCPRECONNECTINFO pour les plugs externes.
Cela doit être appelé à l’adresse IRQL = PASSIVE_LEVEL.