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 都可以藉由變更參考的篩選實例,將這個選擇性參數的值重新導向至目標裝置,則為 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 以增加來源裝置堆疊的大小。

注意 Minifilters 不應先修改FLT_INSTANCE的參考,再確認可以透過這種方式進行重新導向。 使用 FltIsIoRedirectionAllowedForOperationFltIsIoRedirectionAllowed
 

規格需求

需求
最低支援的用戶端 可在 Windows 7 和更新版本的 Windows 作業系統中使用。
目標平台 Universal
標頭 fltkernel.h (包括 FltKernel.h)
程式庫 FltMgr.lib
Dll Fltmgr.sys
IRQL <=DISPATCH_LEVEL

另請參閱

FLT_CALLBACK_DATA

FLT_IO_PARAMETER_BLOCK

FltAdjustDeviceStackSizeForIoRedirection

FltIsIoRedirectionAllowed