Partager via


IOCTL_MOUNTDEV_QUERY_UNIQUE_ID IOCTL (mountdev.h)

IOCTL_MOUNTDEV_QUERY_UNIQUE_ID récupère un identificateur unique pour un appareil ou un volume.

Les clients du gestionnaire de montage doivent prendre en charge cette IOCTL. Lors de la réception de ce IOCTL, le client du gestionnaire de montage doit fournir un identificateur de chaîne d’octet compté unique au client (autrement dit, l’appareil ou le volume).

Code principal

IRP_MJ_DEVICE_CONTROL

Mémoire tampon d’entrée

Aucun.

Longueur de la mémoire tampon d’entrée

Aucun.

Mémoire tampon de sortie

La classe d’appareil ou le pilote de volume retourne la structure MOUNTDEV_UNIQUE_ID dans la mémoire tampon à Irp->AssociatedIrp.SystemBuffer.

Longueur de la mémoire tampon de sortie

Parameters.DeviceIoControl.OutputBufferLength à l’emplacement de la pile d’E/S de l’IRP indique la taille, en octets, de la mémoire tampon de sortie, qui doit être supérieure ou égale à sizeof(MOUNTDEV_UNIQUE_ID).

Mémoire tampon d’entrée/sortie

N/A

Longueur de la mémoire tampon d’entrée/sortie

N/A

Bloc d’état

Le champ Informations est défini sur FIELD_OFFSET(MOUNTDEV_UNIQUE_ID, UniqueId) + sortie ->UniqueIdLength ; ou alternativement à sizeof(USHORT) + output->UniqueIdLength, où la sortie pointe vers la mémoire tampon à Irp->AssociatedIrp.SystemBuffer.

Remarques

L’implémenteur de cette fonction ne doit pas synchroniser les threads et ne doit pas effectuer d’appels de fonction de blocage et/ou de communication interprocess (IPC).

Pour plus d’informations, consultez prise en charge des demandes mount Manager dans un pilote de classe de stockage.

Exigences

Exigence Valeur
d’en-tête mountdev.h (include Mountdev.h)

Voir aussi

MOUNTDEV_UNIQUE_ID