IOCTL_MOUNTMGR_KEEP_LINKS_WHEN_OFFLINE IOCTL (mountmgr.h)
Этот IOCTL направляет диспетчер подключений, чтобы сохранить символьную связь активной после того, как диспетчер Plug and Play дал уведомление о том, что соответствующий том был отключен. Когда том возвращается в сети, диспетчер подключения переназначает символьную ссылку на том. Никакие другие тома не могут претендовать на символьную ссылку, пока его исходный владелец находится в автономном режиме.
Кластеры используют этот IOCTL, чтобы узел продолжал получать доступ к тому с той же буквой диска, даже если том не постоянно присутствует в системе.
Основной код
Входной буфер
Клиент диспетчера подключений загружает следующую структуру с символьной ссылкой, которая будет сохраняться даже после удаления тома из системы. Инициализированная структура MOUNTMGR_TARGET_NAME вставляется в начале буфера в Irp->AssociatedIrp.SystemBuffer.
Длина входного буфера
Parameters.DeviceIoControl.InputBufferLength в расположении стека ввода-вывода iRP указывает размер входного буфера в байтах, который должен быть больше или равен sizeof(MOUNTMGR_TARGET_NAME)
.
Выходной буфер
Никакой.
Длина выходного буфера
Никакой.
Буфер входных и выходных данных
N/A
Длина буфера ввода и вывода
N/A
Блок состояния
Если операция выполнена успешно, для поля состояния задано значение STATUS_SUCCESS.
Размер входного буфера, указанный InputBufferLength, должен быть достаточно большим, чтобы сохранить структуру MOUNTMGR_TARGET_NAME и имя символьной ссылки, которое следует за ним. Если оно недостаточно большое, для поля состояния задано значение STATUS_INVALID_PARAMETER.
Замечания
Дополнительные сведения см. в поддержке запросов диспетчера подключений вдрайвера класса хранилища.
Требования
Требование | Ценность |
---|---|
заголовка | mountmgr.h (include Mountmgr.h) |