MRxDevFcbXXXControlFile ルーチン
MRxDevFcbXXXControlFile ルーチンは、RDBSS によって呼び出され、デバイス FCB 制御要求 (IOCTL または FSCTL 要求) をネットワーク ミニリダイレクターに渡します。
構文
PMRX_CALLDOWN MRxDevFcbXXXControlFile;
NTSTATUS MRxDevFcbXXXControlFile(
_Inout_ PRX_CONTEXT RxContext
)
{ ... }
パラメーター
RxContext [in, out]
RX_CONTEXT 構造体へのポインター。 このパラメータには、操作を要求している IRP が含まれます。
戻り値
MRxDevFcbXXXControlFile は、成功した場合は STATUS_SUCCESS を返すか、次のいずれかの適切な NTSTATUS 値を返します。
リターン コード | 説明 |
---|---|
STATUS_ACCESS_DENIED | ネットワーク ミニリダイレクターを停止または開始する要求が行われましたが、呼び出し元にはこの操作に対する適切なセキュリティがありませんでした。 |
STATUS_INVALID_DEVICE_REQUEST | 無効なデバイス要求がネットワーク ミニリダイレクターに送信されました。 |
STATUS_REDIRECTOR_HAS_OPEN_HANDLES | これはネットワーク ミニリダイレクターを停止する要求でしたが、リダイレクターにはオープン ハンドルがあるため、現時点では停止できません。 |
STATUS_REDIRECTOR_NOT_STARTED | これはネットワーク ミニリダイレクターを停止する要求でしたが、リダイレクターは開始されていませんでした。 |
STATUS_REDIRECTOR_STARTED | これはネットワーク ミニリダイレクターを開始する要求でしたが、リダイレクターはすでに開始されています。 |
解説
MRxDevFcbXXXControlFile は、ネットワーク ミニリダイレクターに送信されるデバイス FCB に関連する IOCTL および FSCTL 要求を処理します。
MRxDevFcbXXXControlFile を呼び出す前に、RDBSS は、RxContext パラメータによりポイントされるRX_CONTEXT 構造体の次のメンバーを変更します。
MajorFunction は、IRPの主要機能に設定されています
これが IRP_MJ_FILE_SYSTEM_CONTROL リクエストである場合、RDBSS は、RxContext パラメータによりポイントされた RX_CONTEXT 構造体の以下のメンバーを変更します。
LowIoContext.ParamsFor.FsCtl.MinorFunction は、FSCTLコードのマイナー機能コードに設定されます
LowIoContext.ParamsFor.FsCtl.FsControlCodeは、IRP の FSCTL コードに設定されます。
これが IRP_MJ_DEVICE_CONTROL または IRP_MJ_INTERNAL_DEVICE_CONTROL リクエストである場合、RDBSS は、RxContext パラメータによりポイントされる RX_CONTEXT 構造体の以下のメンバーを変更します。
LowIoContext.ParamsFor.FsCtl.FsControlCode は、IRP の制御コードに設定されます。
MRxDevFcbXXXControlFile がSTATUS_SUCCESS を返した場合、ルーチンは成功しました。 それ以外の戻り値は、エラーが発生したことを示します。
要件
対象プラットフォーム |
デスクトップ |
ヘッダー |
Mrx.h (Mrx.h を含む) |