Поделиться через


Подпрограмма MRxDevFcbXXXXControlFile

Подпрограмма MRxDevFcbXXXXControlFile вызывается RDBSS для передачи запроса управления FCB устройства (IOCTL или FSCTL) мини-перенаправлению сети.

Синтаксис

PMRX_CALLDOWN MRxDevFcbXXXControlFile;

NTSTATUS MRxDevFcbXXXControlFile(
  _Inout_ PRX_CONTEXT RxContext
)
{ ... }

Параметры

RxContext [in, out]
Указатель на структуру RX_CONTEXT. Этот параметр содержит IRP, запрашивающий операцию.

Возвращаемое значение

MRxDevFcbXXXXControlFile возвращает STATUS_SUCCESS при успешном выполнении или соответствующее значение NTSTATUS, например одно из следующих значений:

Код возврата Описание
STATUS_ACCESS_DENIED

Был сделан запрос на остановку или запуск мини-перенаправления сети, но у вызывающего объекта не было надлежащего обеспечения безопасности для этой операции.

STATUS_INVALID_DEVICE_REQUEST

В мини-перенаправление сети отправлен недопустимый запрос устройства.

STATUS_REDIRECTOR_HAS_OPEN_HANDLES

Это был запрос на остановку мини-перенаправления сети, но у перенаправителя есть открытые дескрипторы, которые не позволяют остановить его в данный момент.

STATUS_REDIRECTOR_NOT_STARTED

Это был запрос на остановку мини-перенаправления сети, но перенаправление не было запущено.

STATUS_REDIRECTOR_STARTED

Это был запрос на запуск мини-перенаправления сети, но перенаправление уже запущено.

Комментарии

MRxDevFcbXXXXControlFile обрабатывает запросы IOCTL и FSCTL, связанные с FCB устройства, которые отправляются в мини-перенаправление сети.

Перед вызовом MRxDevFcbXXXXControlFile RDBSS изменяет следующий элемент в структуре RX_CONTEXT, на которую указывает параметр RxContext :

MajorFunction — это основная функция IRP.

Если это был запрос IRP_MJ_FILE_SYSTEM_CONTROL, то RDBSS изменяет следующие элементы в структуре RX_CONTEXT, на которую указывает параметр RxContext :

LowIoContext.ParamsFor.FsCtl.MinorFunction имеет дополнительный код функции для кода FSCTL.

LowIoContext.ParamsFor.FsCtl.FsControlCode имеет значение FSCTL-код для IRP

Если это был запрос IRP_MJ_DEVICE_CONTROL или IRP_MJ_INTERNAL_DEVICE_CONTROL, то RDBSS изменяет следующий элемент в структуре RX_CONTEXT, на которую указывает параметр RxContext :

LowIoContext.ParamsFor.FsCtl.FsControlCode имеет управляющий код для IRP.

Если MRxDevFcbXXXXControlFile возвращает STATUS_SUCCESS, то подпрограмма выполнена успешно. Любое другое возвращаемое значение указывает на то, что произошла ошибка.

Требования

Целевая платформа

Персональный компьютер

Заголовок

Mrx.h (включая Mrx.h)

См. также раздел

MRxStart

MRxStop