RtlInitUTF8StringEx 函数 (ntifs.h)

RtlInitUTF8StringEx 初始化 UTF-8 字符的计数字符串。

语法

NTSYSAPI NTSTATUS RtlInitUTF8StringEx(
  PUTF8_STRING          DestinationString,
  __drv_aliasesMem PCSZ SourceString
);

参数

DestinationString

指向要初始化UTF8_STRING结构的指针。 ntdef.h 头文件将此结构定义为与 ANSI_STRING 结构相同。

SourceString

指向以 null 结尾的字符串的指针。 SourceString 用于初始化 DestinationString 指向的计数字符串。

返回值

如果 SourceString 过长,RtlInitUTF8StringEx 将返回STATUS_NAME_TOO_LONG。 否则,此例程返回STATUS_SUCCESS。

注解

RtlInitUTF8StringEx 设置 DestinationString 指向的 UTF8_STRING 结构的成员,如下所示:

  • SourceString 的指针值复制到 Buffer 成员中。

  • Length 成员设置为源字符串的长度(以字节为单位),不包括终止 null。

  • MaximumLength 成员设置为源字符串的长度(以字节为单位),包括终止 null。

如果 SourceStringNULL则 LengthMaximumLength 都设置为零。

RtlInitStringEx 不会更改 SourceString 指向的源字符串。

如果 DestinationString 缓冲区不可分页,则 RtlInitStringEx 的调用方可以在 IRQL <= DISPATCH_LEVEL 运行。 通常,调用方在 IRQL = PASSIVE_LEVEL 运行,因为大多数其他 RtlXxx字符串 例程无法在 IRQL > PASSIVE_LEVEL调用。

要求

要求
最低受支持的客户端 Windows 10 版本 2004
标头 ntifs.h

另请参阅

ANSI_STRING