RtlUnicodeStringToOemString 函数 (ntifs.h)

RtlUnicodeStringToOemString 例程使用当前系统 OEM 代码页将给定的 Unicode 源字符串转换为 OEM 字符串。

语法

NTSYSAPI NTSTATUS RtlUnicodeStringToOemString(
       POEM_STRING      DestinationString,
  [in] PCUNICODE_STRING SourceString,
  [in] BOOLEAN          AllocateDestinationString
);

参数

DestinationString

指向调用方分配的缓冲区以接收 OEM 字符串的指针。 如果 AllocateDestinationStringFALSE,则调用方还必须为 DestinationStringBuffer 成员分配缓冲区,以保存 OEM 数据。 如果 AllocateDestinationStringTRUE则 RtlUnicodeStringToOemString 会分配一个足够大的缓冲区来保存字符串,在 Buffer 中传递指向该字符串的指针,并相应地更新 DestinationString 的长度和最大长度成员。

[in] SourceString

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

[in] AllocateDestinationString

如果 RtlUnicodeStringToOemString 应为 DestinationString 分配缓冲区空间,则设置为 TRUE,否则为 FALSE。 如果此参数为 TRUE,则调用方负责通过调用 RtlFreeOemString 不再需要缓冲区时释放缓冲区。

返回值

如果转换 DestinationString 中的字符串,RtlUnicodeStringToOemString返回STATUS_SUCCESS。 否则,不会分配任何存储,也不会执行任何转换。

注解

RtlUnicodeStringToOemString 使用在系统启动时作为当前系统代码页安装的 OEM 代码页来转换给定的源字符串。

RtlUnicodeStringToOemString 不修改源字符串。 它返回以 null 结尾的 OEM 字符串。

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

要求

要求
目标平台 通用
标头 ntifs.h (包括 Ntifs.h)
Library NtosKrnl.lib
DLL NtosKrnl.exe
IRQL < DISPATCH_LEVEL

另请参阅

OEM_STRING

RtlFreeOemString

RtlUnicodeStringToCountedOemString

RtlUnicodeStringToOemSize

RtlUnicodeToOemN

RtlUpcaseUnicodeStringToOemString

UNICODE_STRING