共用方式為


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 可以藉由變更參考的篩選實例,將這個 I/O 重新導向至目標裝置堆疊, TRUE 的值。

[out, optional] RedirectionAllowedAllIo

如果 I/O 作業發出至裝置堆疊的所有 I/O 都可以藉由變更參考的篩選實例,將 I/O 的所有 I/O 重新導向至目標裝置,則這個選擇性參數的值為 TRUE,否則 FALSE

傳回值

如果不支援重新導向,則為STATUS_SUCCESS NTSTATUS 值,表示成功或STATUS_NOT_SUPPORTED。

言論

I/O 作業與 FLT_CALLBACK_DATA 結構相關聯。 該結構包含 PFLT_IO_PARAMETER_BLOCK 對象的參考,其中包含與 I/O 作業相關聯之迷你篩選FLT_INSTANCE的參考。

如果 RedirectAllowedTRUE,則迷你篩選程式可以將該實例變更為新的目標實例來重新導向 I/O。

如果 RedirectAllowedFALSE,迷你篩選程式必須配置新的回呼數據物件,以在目標堆棧上發出 I/O,或呼叫 FltAdjustDeviceStackSizeForIoRedirection,以增加來源裝置堆棧的大小。

附注 Minifilter 不應該修改對FLT_INSTANCE的參考,然後再確認可以這樣進行重新導向。 使用 FltIsIoRedirectionAllowedForOperationFltIsIoRedirectionAllowed
 

要求

要求 價值
最低支援的用戶端 適用於 Windows 7 和更新版本的 Windows作系統。
目標平臺 普遍
標頭 fltkernel.h (包括 FltKernel.h)
連結庫 FltMgr.lib
DLL Fltmgr.sys
IRQL <=DISPATCH_LEVEL

另請參閱

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FltAdjustDeviceStackSizeForIoRedirection

FltIsIoRedirectionAllowed