FltIsIoRedirectionAllowedForOperation 函数 (fltkernel.h)
FltIsIoRedirectionAllowedForOperation 例程确定是否可以将 I/O 从与指定 FLT_CALLBACK_DATA 结构关联的筛选器实例重定向到指定的筛选器实例。
语法
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 结构相关联。 该结构包含对 PFLT_IO_PARAMETER_BLOCK 对象的引用,该对象包含对与 I/O作关联的微筛选器FLT_INSTANCE的引用。
如果 RedirectAllowedTRUE,则微型筛选器可以通过将该实例更改为新的目标实例来重定向 I/O。
如果 重定向FALSE,则微筛选器需要分配新的回调数据对象以在目标堆栈上发出 I/O,或调用 FltAdjustDeviceStackSizeForIoRedirection 以增加源设备堆栈的大小。
注意 微型筛选器不应修改对FLT_INSTANCE的引用,然后才能验证是否可以这样进行重定向。 使用 FltIsIoRedirectionAllowedForOperation 或 FltIsIoRedirectionAllowed。
要求
要求 | 价值 |
---|---|
最低支持的客户端 | 在 Windows 7 及更高版本的 Windows作系统中可用。 |
目标平台 | 普遍 |
标头 | fltkernel.h (包括 FltKernel.h) |
库 | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <=DISPATCH_LEVEL |