Функция FltIsIoRedirectionAllowedForOperation (fltkernel.h)
Подпрограмма fltIsIoRedirectionAllowedForOperation определяет, можно ли перенаправить операции ввода-вывода из экземпляра фильтра, связанного с указанной структурой FLT_CALLBACK_DATA в указанный экземпляр фильтра.
Синтаксис
NTSTATUS FLTAPI FltIsIoRedirectionAllowedForOperation(
[in] PFLT_CALLBACK_DATA Data,
[in] PFLT_INSTANCE TargetInstance,
[out] PBOOLEAN RedirectionAllowedThisIo,
[out, optional] PBOOLEAN RedirectionAllowedAllIo
);
Параметры
[in] Data
Структура FLT_CALLBACK_DATA, представляющая операцию ввода-вывода.
[in] TargetInstance
Экземпляр фильтра в стеке целевых устройств.
[out] RedirectionAllowedThisIo
Значение TRUE, если этот ввод-вывод можно перенаправить в целевой стек устройств, изменив ссылку на экземпляр фильтра.
[out, optional] RedirectionAllowedAllIo
Этот необязательный параметр имеет значение TRUE, если все операции ввода-вывода в стек устройства, к которому выдана операция ввода-вывода, можно перенаправить на целевое устройство, изменив указанный экземпляр фильтра, в противном случае FALSE.
Возвращаемое значение
Значение NTSTATUS STATUS_SUCCESS для успешного выполнения или STATUS_NOT_SUPPORTED, если перенаправление не поддерживается.
Замечания
Операция ввода-вывода связана со структурой FLT_CALLBACK_DATA. Эта структура содержит ссылку на объект PFLT_IO_PARAMETER_BLOCK, содержащий ссылку на FLT_INSTANCE минифильтра, связанного с операцией ввода-вывода.
Если RedirectionAllowedTRUE, минифильтр может перенаправить ввод-вывод, изменив этот экземпляр на новый целевой экземпляр.
Если RedirectionAllowedFALSE, минифильтр должен выделить новый объект данных обратного вызова для выдачи ввода-вывода в целевом стеке или вызова FltAdjustDeviceStackSizeForIoRedirection, чтобы увеличить размер стека исходного устройства.
Требования
Требование | Ценность |
---|---|
минимальные поддерживаемые клиентские | Доступно в Windows 7 и более поздних версиях операционной системы Windows. |
целевая платформа | Всеобщий |
заголовка | fltkernel.h (include FltKernel.h) |
библиотеки | FltMgr.lib |
DLL | Fltmgr.sys |
IRQL | <=DISPATCH_LEVEL |