IOCTL_MOUNTDEV_QUERY_UNIQUE_ID IOCTL (mountdev.h)
O suporte para esse IOCTL por clientes do gerenciador de montagem é obrigatório. 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). O cliente não pode alterar essa ID exclusiva sem alertar o gerenciador de montagem (consulte IOCTL_MOUNTDEV_UNIQUE_ID_CHANGE_NOTIFY).
Código principal
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).
Bloco de status
O campo Informações é definido como FIELD_OFFSET(MOUNTDEV_UNIQUE_ID, UniqueId) + output-UniqueIdLength>; ou, alternativamente, como 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 comunicação entre processos (IPC).
Requisitos
Requisito | Valor |
---|---|
Cabeçalho | mountdev.h (inclua Mountdev.h) |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de