IOCTL_MOUNTDEV_QUERY_UNIQUE_ID IOCTL (mountdev.h)

IOCTL_MOUNTDEV_QUERY_UNIQUE_ID recupera um identificador exclusivo para um dispositivo ou volume.

Os clientes do Mount Manager devem dar suporte a esse IOCTL. Ao receber esse IOCTL, o cliente do gerenciador de montagem deve fornecer um identificador de cadeia de caracteres de bytes contado que seja exclusivo para o cliente (ou seja, o dispositivo ou o volume).

Código principal

IRP_MJ_DEVICE_CONTROL

Buffer de entrada

Nenhum.

Comprimento do buffer de entrada

Nenhum.

Buffer de saída

A classe de dispositivo ou o driver de volume retorna a estrutura MOUNTDEV_UNIQUE_ID no buffer em Irp-AssociatedIrp.SystemBuffer>.

Comprimento do buffer de saída

Parameters.DeviceIoControl.OutputBufferLength no local da pilha de E/S do IRP indica o tamanho, em bytes, do buffer de saída, que deve ser maior ou igual a sizeof(MOUNTDEV_UNIQUE_ID).

Buffer de entrada/saída

N/D

Comprimento do buffer de entrada/saída

N/D

Bloco de status

O campo Informações é definido como FIELD_OFFSET(MOUNTDEV_UNIQUE_ID, UniqueId) + output-UniqueIdLength>; ou alternativamente para sizeof(USHORT) + output-UniqueIdLength>, em que a saída aponta para o buffer em Irp-AssociatedIrp.SystemBuffer>.

Comentários

O implementador dessa função não deve ser sincronizado por thread e não deve fazer chamadas de função de bloqueio e/ou IPC (Interprocess Communication).

Para obter mais informações, consulte Suporte a solicitações do Mount Manager em um driver de classe de armazenamento.

Requisitos

Requisito Valor
Cabeçalho mountdev.h (inclua Mountdev.h)

Confira também

MOUNTDEV_UNIQUE_ID