Share via


FltIsIoRedirectionAllowedForOperation 関数 (fltkernel.h)

FltIsIoRedirectionAllowedForOperation ルーチンは、指定したFLT_CALLBACK_DATA構造体に関連付けられているフィルター インスタンスから指定したフィルター インスタンスに I/O をリダイレクトできるかどうかを決定します。

構文

NTSTATUS FLTAPI FltIsIoRedirectionAllowedForOperation(
  [in]            PFLT_CALLBACK_DATA Data,
  [in]            PFLT_INSTANCE      TargetInstance,
  [out]           PBOOLEAN           RedirectionAllowedThisIo,
  [out, optional] PBOOLEAN           RedirectionAllowedAllIo
);

パラメーター

[in] Data

I/O 操作を表す FLT_CALLBACK_DATA 構造体。

[in] TargetInstance

ターゲット デバイス スタック上のフィルター インスタンス。

[out] RedirectionAllowedThisIo

参照されるフィルター インスタンスを変更することで、この I/O をターゲット デバイス スタックにリダイレクトできる場合は TRUE の 値。

[out, optional] RedirectionAllowedAllIo

この省略可能なパラメーターは、I/O 操作が発行されるデバイス スタックへのすべての I/O を、参照されるフィルター インスタンスを変更することによってターゲット デバイスにリダイレクトできる場合は TRUE 、それ以外の場合は FALSE です。

戻り値

成功にSTATUS_SUCCESS NTSTATUS 値。リダイレクトがサポートされていない場合はSTATUS_NOT_SUPPORTED。

注釈

I/O 操作は 、FLT_CALLBACK_DATA 構造体に関連付けられています。 この構造体には、 I /O 操作に関連付けられているミニフィルターのFLT_INSTANCEへの参照を含む、PFLT_IO_PARAMETER_BLOCK オブジェクトへの参照が含まれています。

RedirectAllowedTRUE の場合、ミニフィルターは、そのインスタンスを新しいターゲット インスタンスに変更することで I/O をリダイレクトできます。

RedirectionAllowedFALSE の場合、ミニフィルターは新しいコールバック データ オブジェクトを割り当ててターゲット スタックで I/O を発行するか、FltAdjustDeviceStackSizeForIoRedirection を呼び出してソース デバイス スタックのサイズを大きくする必要があります。

メモ ミニフィルターは、リダイレクトをこのように実行できることを確認する前に、FLT_INSTANCEへの参照を変更しないでください。 FltIsIoRedirectionAllowedForOperation または FltIsIoRedirectionAllowed を使用します。
 

要件

要件
サポートされている最小のクライアント Windows 7 以降のバージョンの Windows オペレーティング システムで使用できます。
対象プラットフォーム ユニバーサル
Header fltkernel.h (FltKernel.h を含む)
Library FltMgr.lib
[DLL] Fltmgr.sys
IRQL <=DISPATCH_LEVEL

こちらもご覧ください

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FltAdjustDeviceStackSizeForIoRedirection

FltIsIoRedirectionAllowed