RtlUpcaseUnicodeToOemN 函数 (ntifs.h)
RtlUpcaseUnicodeToOemN 例程使用当前系统 OEM 代码页将给定的 Unicode 字符串转换为大写的 OEM 字符串。
语法
NTSYSAPI NTSTATUS RtlUpcaseUnicodeToOemN(
[out] PCHAR OemString,
[in] ULONG MaxBytesInOemString,
[out, optional] PULONG BytesInOemString,
[in] PCWCH UnicodeString,
[in] ULONG BytesInUnicodeString
);
参数
[out] OemString
指向调用方分配的缓冲区的指针,用于接收已翻译的字符串。
[in] MaxBytesInOemString
要写入 OemString 的最大字节数。
[out, optional] BytesInOemString
指向调用方分配的变量的指针,该变量接收已翻译字符串中的字节数。 此参数可以为 NULL。
[in] UnicodeString
指向要转换的 Unicode 源字符串的指针。
[in] BytesInUnicodeString
UnicodeString 处字符串的大小(以字节为单位)。
返回值
如果 UnicodeString 处的完整字符串已成功转换、转换为大写并在 OemString 处返回,则 RtlUnicodeToOemN 将返回STATUS_SUCCESS。 否则,如果必须截断目标字符串以适应给定的 MaxBytesInOemString,则它可以返回STATUS_BUFFER_OVERFLOW。
注解
对于返回值STATUS_BUFFER_OVERFLOW, 已转换 OemString 中截断的字符串,但未出错。
对于STATUS_SUCCESS的返回值, BytesInOemString 处的值(如果有)指示返回的字符串的长度,而不是给定的 MaxBytesInOemString。
此例程不会修改源字符串。 如果给定的 BytesInUnicodeString 包含 NULL 终止符,并且给定的 MaxBytesInOemString 不会导致截断,则返回以 null 结尾的 OEM 字符串。
有关其他字符串处理例程的信息,请参阅 运行时库 (RTL) 例程。
要求
要求 | 值 |
---|---|
目标平台 | 通用 |
标头 | ntifs.h (包括 Ntifs.h) |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |