RtlIsNameLegalDOS8Dot3 函数 (ntifs.h)

RtlIsNameLegalDOS8Dot3 例程确定给定名称是否表示有效的短 (8.3) 文件名。

语法

NTSYSAPI BOOLEAN RtlIsNameLegalDOS8Dot3(
  [in]            PCUNICODE_STRING Name,
  [in, out]       POEM_STRING      OemName,
  [out, optional] PBOOLEAN         NameContainsSpaces
);

参数

[in] Name

指向包含文件名的 Unicode 字符串的指针。

[in, out] OemName

指向调用方分配的可选缓冲区的指针,该缓冲区接收与 名称处的 Unicode 字符串对应的计数 OEM 字符串。

[out, optional] NameContainsSpaces

指向可选 BOOLEAN 值的指针,如果 Name 中的字符串包含嵌入空格,则返回 TRUE;否则为 FALSE。 仅当 RtlIsNameLegalDOS8Dot3 返回 TRUE 时,此值才有效。

返回值

如果 Name 中的字符串是 8.3) 文件名的法定短 (,则 RtlIsNameLegalDOS8Dot3 返回 TRUE,否则返回 FALSE

注解

RtlIsNameLegalDOS8Dot3 使用在系统启动时作为当前系统代码页安装的 OEM 代码页在 Name 处转换 Unicode 字符串,并将已翻译的字符串转换为大写。 (如果调用方在 OemName 中提供了缓冲区,则此缓冲区将接收生成的字符串。) RtlIsNameLegalDOS8Dot3 检查名称是否为格式正确的 8.3 名称,并且仅包含合法字符。

有关其他字符串处理例程的信息,请参阅 运行时库 (RTL) 例程

如果 Name 处的内存块是非分页的,则调用方可以在 IRQL <= DISPATCH_LEVEL 运行。 否则, RtlIsNameLegalDOS8Dot3 的调用方必须在 IRQL < DISPATCH_LEVEL运行。

要求

要求
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL 请参见“备注”部分。

另请参阅

OEM_STRING

RtlGenerate8dot3Name

UNICODE_STRING