RtlUnicodeStringToUTF8String 函数 (wdm.h)

RtlUnicodeStringToUTF8String 函数将指定的 Unicode 源字符串转换为 UTF8 字符串。

语法

NTSYSAPI NTSTATUS RtlUnicodeStringToUTF8String(
  PUTF8_STRING     DestinationString,
  PCUNICODE_STRING SourceString,
  BOOLEAN          AllocateDestinationString
);

参数

DestinationString

指向 UTF8_STRING 结构的指针,用于保存转换后的 UTF8 字符串。 如果 AllocateDestinationStringTRUE,则例程分配一个新缓冲区来保存字符串数据,并将 DestinationStringBuffer 成员更新为指向新缓冲区。 否则,例程使用当前指定的缓冲区来保存字符串。 仅当 AllocateDestinationString 为 TRUE 时,才设置最大长度字段。

SourceString

指向要转换为 UTF8 的 Unicode 源字符串的指针。

AllocateDestinationString

如果此例程要为 DestinationString 分配缓冲区空间,则为 TRUE。 如果是,则必须通过调用 RtlFreeUTF8String 解除分配缓冲区。

返回值

如果转换成功, RtlUnicodeStringToUTF8String 将返回STATUS_SUCCESS。 失败时,例程不会分配内存或执行转换。

要求

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

另请参阅

RtlFreeUTF8String