FltGetCopyInformationFromCallbackData 函数 (fltkernel.h)

FltGetCopyInformationFromCallbackData 例程从回调数据中检索复制信息(如果存在)。 复制信息位于 IRP 扩展中,用于从 NtCopyFileChunk进行读/写调用。

语法

NTSTATUS FLTAPI FltGetCopyInformationFromCallbackData(
  [in]  PFLT_CALLBACK_DATA Data,
  [out] PCOPY_INFORMATION  CopyInformation
);

参数

[in] Data

指向保存回调数据的 FLT_CALLBACK_DATA 结构的指针。

[out] CopyInformation

指向将写入复制信息的 COPY_INFORMATION 结构的指针。

返回值

FltGetCopyInformationFromCallbackData 成功后返回STATUS_SUCCESS,或错误代码,如下所示。

错误代码 意义
STATUS_INVALID_PARAMETER 回调数据不适用于 IRP作。
STATUS_NOT_FOUND 未在 IRP 上设置复制信息 IRP 扩展。

言论

NtCopyFileChunk 执行的任何受信任读取或写入作将具有以下各项:

  • IRP 的请求程序模式设置为 KernelMode
  • IopCopyInformationType 的 IRP 扩展 类型和 有关复制作的信息。

筛选器无权直接访问 IRP 扩展,但可以通过调用 FltGetCopyInformationFromCallbackData来检查是否存在复制扩展并获取复制信息。

有关详细信息,请参阅 内核模式文件复制和检测复制文件方案

要求

要求 价值
最低支持的客户端 Windows 11 版本 22H2
标头 fltkernel.h
IRQL <= DISPATCH_LEVEL

另请参阅

COPY_INFORMATION

IoCheckFileObjectOpenedAsCopyDestination

IoCheckFileObjectOpenedAsCopySource

NtCopyFileChunk

NtCreateFile