RtlUnicodeStringToAnsiString 函数 (wdm.h)

RtlUnicodeStringToAnsiString 例程将给定的 Unicode 字符串转换为 ANSI 字符串。

语法

NTSYSAPI NTSTATUS RtlUnicodeStringToAnsiString(
  [in, out] PANSI_STRING     DestinationString,
  [in]      PCUNICODE_STRING SourceString,
  [in]      BOOLEAN          AllocateDestinationString
);

参数

[in, out] DestinationString

指向 ANSI_STRING 结构的指针,用于保存转换后的 ANSI 字符串。 如果 AllocateDestinationStringTRUE,则例程会分配一个新缓冲区来保存字符串数据,并将 DestinationStringBuffer 成员更新为指向新缓冲区。 否则,例程使用当前指定的缓冲区来保存字符串。

[in] SourceString

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

[in] AllocateDestinationString

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

返回值

如果转换成功, RtlUnicodeStringToAnsiString 将返回STATUS_SUCCESS。 否则,不会分配任何存储,也未执行任何转换。

注解

转换是按照当前系统区域设置信息完成的。

要求

要求
最低受支持的客户端 从 Windows 2000 开始可用。
目标平台 通用
标头 wdm.h(包括 Wdm.h、Ntddk.h、Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL PASSIVE_LEVEL

另请参阅

ANSI_STRING

RtlAnsiStringToUnicodeString

RtlFreeAnsiString

UNICODE_STRING