FsRtlRemoveDotsFromPath 函数 (ntifs.h)

FsRtlRemoveDotsFromPath 例程删除不必要的“.”和“..” 来自指定路径的 。

语法

NTSTATUS FsRtlRemoveDotsFromPath(
  [in, out] PWSTR  OriginalString,
  [in]      USHORT PathLength,
  [out]     USHORT *NewLength
);

参数

[in, out] OriginalString

指向要处理的缓冲区的指针。

[in] PathLength

缓冲区 (的长度(以字节) 为单位)。

[out] NewLength

指向处理后缓冲区的新长度的指针。

返回值

FsRtlRemoveDotsFromPath 例程返回成功STATUS_SUCCESS值,如果操作无法完成,则返回STATUS_IO_REPARSE_DATA_INVALID。

注解

此例程将采用 Path 作为 OriginalString ,如以下示例所示:

\dir1\dir2\..\dir3\.\file.txt

该例程将修改 OriginalString ,如下所示:

\dir1\dir3\file.txt

如果将以下任一字符串作为 OriginalString 传递,则例程将失败并STATUS_IO_REPARSE_DATA_INVALID:

\..
..
..\anyOtherContent

要求

要求
最低受支持的客户端 Windows Vista
目标平台 通用
标头 ntifs.h (包括 FltKernel.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL
DDI 符合性规则 HwStorPortProhibitedDDI (storport) PowerIrpDDis (wdm)