IOCTL_MOUNTDEV_QUERY_UNIQUE_ID IOCTL (mountdev.h)
IOCTL_MOUNTDEV_QUERY_UNIQUE_ID извлекает уникальный идентификатор устройства или тома.
Клиенты диспетчера подключений должны поддерживать этот IOCTL. После получения этого IOCTL клиент диспетчера подключений должен предоставить подсчитанный идентификатор строки байтов, который является уникальным для клиента (то есть устройства или тома).
Основной код
Входной буфер
Нет.
Длина входного буфера
Нет.
Выходной буфер
Класс устройства или драйвер тома возвращает структуру MOUNTDEV_UNIQUE_ID в буфере irp-AssociatedIrp.SystemBuffer>.
Длина выходного буфера
Parameters.DeviceIoControl.OutputBufferLength в расположении стека ввода-вывода IRP указывает размер выходного буфера в байтах, который должен быть больше или равен sizeof(MOUNTDEV_UNIQUE_ID)
.
Буфер входных и выходных данных
Н/Д
Длина входного/выходного буфера
Н/Д
Блок состояния
Для поля Information задано значение FIELD_OFFSET(MOUNTDEV_UNIQUE_ID, UniqueId) + output-UniqueIdLength> или значение sizeof(USHORT) + output-UniqueIdLength>, где выходные данные указывают на буфер по адресу Irp-AssociatedIrp.SystemBuffer>.
Комментарии
Реализующий эту функцию не должен синхронизировать потоки и не должен выполнять блокирующие и (или) вызовы функций межпроцессного взаимодействия (IPC).
Дополнительные сведения см. в разделе Поддержка запросов диспетчера подключений в драйвере класса хранилища.
Требования
Требование | Значение |
---|---|
Заголовок | mountdev.h (включая Mountdev.h) |