FsRtlNotifyFullReportChange 函数 (ntifs.h)

FsRtlNotifyFullReportChange 例程完成挂起的通知更改 IRP。

语法

void FsRtlNotifyFullReportChange(
  [in]           PNOTIFY_SYNC NotifySync,
  [in]           PLIST_ENTRY  NotifyList,
  [in]           PSTRING      FullTargetName,
  [in]           USHORT       TargetNameOffset,
  [in, optional] PSTRING      StreamName,
  [in, optional] PSTRING      NormalizedParentName,
  [in]           ULONG        FilterMatch,
  [in]           ULONG        Action,
  [in, optional] PVOID        TargetContext
);

参数

[in] NotifySync

指向当前卷不透明同步对象的指针。

[in] NotifyList

指向通知列表头的指针。 列表中的每个元素都是不透明的通知结构。

[in] FullTargetName

指向包含文件完整路径名称的 ANSI 或 Unicode 字符串的指针。

[in] TargetNameOffset

名称最终组件的 FullTargetName 字符串中的偏移量。

[in, optional] StreamName

指向 ANSI 或 Unicode 字符串的可选指针,其中包含使用文件名存储的流名称。

[in, optional] NormalizedParentName

指向 ANSI 或 Unicode 字符串的可选指针,该字符串包含与 FullTargetName 字符串中相同的路径,但所有短名称都替换为相应的长名称。

[in] FilterMatch

要与通知结构中的完成筛选器进行比较的标志的位掩码。 如果设置了完成筛选器中的任何相应位,则存在通知条件。 有关可能的标志值,请参阅 FsRtlNotifyFullChangeDirectoryCompletionFilter 参数。

[in] Action

指定要存储在用户缓冲区中的操作代码(如果存在)。 操作代码可以是下面所述的值之一。

操作代码 含义
FILE_ACTION_ADDED 已创建一个新文件或子目录。
FILE_ACTION_REMOVED 已删除文件或子目录。
FILE_ACTION_MODIFIED 已 (修改文件或子目录,但未创建或删除) 。
FILE_ACTION_RENAMED_OLD_NAME 这是已重命名的文件的旧名称。
FILE_ACTION_RENAMED_NEW_NAME 这是已重命名的文件的新名称。
FILE_ACTION_ADDED_STREAM 已打开新流。
FILE_ACTION_REMOVED_STREAM 流已关闭。
FILE_ACTION_MODIFIED_STREAM 流已 (修改,但未在) 打开或关闭。
FILE_ACTION_REMOVED_BY_DELETE 删除文件操作已从索引中删除对象 ID。
FILE_ACTION_ID_NOT_TUNNELLED 无法对文件的对象 ID 进行隧道传输,因为它的对象 ID 与现有文件的 ID 匹配。
FILE_ACTION_TUNNELLED_ID_COLLISION 无法对文件的对象 ID 进行隧道传输,因为该文件已有一个对象 ID。

[in, optional] TargetContext

如果在所监视的树的情况下执行遍历检查,则指向文件系统的上下文指针。 有关详细信息,请参阅 FsRtlNotifyFullChangeDirectoryTraverseCallback 参数。

返回值

备注

修改文件时,文件系统调用 FsRtlNotifyFullReportChange,以便可以完成挂起的通知更改 IRP。

FsRtlNotifyFullReportChange 在通知列表中查找与指定的筛选器和路径名称匹配的通知结构。 如果找到匹配项, FsRtlNotifyFullReportChange 将完成通知结构的所有挂起 IRP。

要求

   
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDIS (storport) PowerIrpDDis (wdm)

另请参阅

FsRtlNotifyFullChangeDirectory