IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME IOCTL (mountdev.h)
IOCTL_MOUNTDEV_QUERY_SUGGESTED_LINK_NAME позволяет клиентам диспетчера подключений, таким как драйверы устройств или томов, предлагать букву диска или имя ссылки для связанных томов.
Поддержка этого IOCTL клиентами диспетчера подключений необязательна.
Основной код
Входной буфер
Нет.
Длина входного буфера
Нет.
Выходной буфер
Драйвер клиента должен разместить структуру переменной длины типа MOUNTDEV_SUGGESTED_LINK_NAME в начале буфера в Irp-AssociatedIrp.SystemBuffer>. Драйвер клиента должен вставить предлагаемое постоянное имя по адресу, на который указывает член Name этой структуры.
Длина выходного буфера
Parameters.DeviceIoControl.OutputBufferLength в расположении стека ввода-вывода IRP указывает размер выходного буфера в байтах, который должен быть больше или равен sizeof(MOUNTDEV_SUGGESTED_LINK_NAME)
.
Буфер входных и выходных данных
Н/Д
Длина входного/выходного буфера
Н/Д
Блок состояния
Если операция выполнена успешно, в поле Сведения задается общее количество возвращаемых байтов, а для поля Состояние — значение STATUS_SUCCESS.
Если значение OutputBufferLength меньше sizeof(MOUNTDEV_SUGGESTED_LINK_NAME), для поля Состояние задано значение STATUS_INVALID_PARAMETER.
Если OutputBufferLength меньше общей длины выходных данных, для поля Состояние устанавливается значение STATUS_BUFFER_OVERFLOW, а для поля Information — значение sizeof(MOUNTDEV_SUGGESTED_LINK_NAME).
Комментарии
Некоторые клиенты диспетчера подключений могут отслеживать буквы дисков при перезагрузке системы без помощи диспетчера подключения. Такие клиенты могут отправить предлагаемое имя диска диспетчеру подключения в ответ на этот IOCTL. Диспетчер подключений использует предлагаемое имя, если база данных диспетчера подключений еще не содержит постоянного имени диска для тома клиента. В противном случае он игнорирует предложение и использует букву диска в своей базе данных постоянных имен.
Имена букв диска должны содержать полный путь к символьной ссылке в пространстве имен объектов и иметь традиционный синтаксис MS-DOS. Например, буква диска "D" должна быть представлена следующим образом: "\DosDevices\D:". Альтернативный путь символьной ссылки "?? \D:" нельзя использовать, а также сокращения символьной ссылки, такие как "D:".
Реализующий эту функцию не должен синхронизировать потоки и не должен выполнять блокирующие и (или) вызовы функций межпроцессного взаимодействия (IPC).
Дополнительные сведения см. в разделе Поддержка запросов диспетчера подключений в драйвере класса хранилища.
Требования
Требование | Значение |
---|---|
Заголовок | mountdev.h (включая Mountdev.h) |