RtlMultiByteToUnicodeSize 函数 (ntifs.h)
RtlMultiByteToUnicodeSize 例程确定存储指定源字符串的 Unicode 转换所需的字节数。 假定翻译使用当前系统 ANSI 代码页(ACP)。 源字符串不一定来自多字节字符集。
语法
NTSYSAPI NTSTATUS RtlMultiByteToUnicodeSize(
[out] PULONG BytesInUnicodeString,
[in] const CHAR *MultiByteString,
[in] ULONG BytesInMultiByteString
);
参数
[out] BytesInUnicodeString
指向调用方分配的变量的指针,该变量接收存储转换后的字符串所需的字节数。
[in] MultiByteString
指向要计算 Unicode 长度的源字符串的指针。
[in] BytesInMultiByteString
源字符串的长度(以字节为单位)。
返回值
RtlMultiByteToUnicodeSize 返回STATUS_SUCCESS。
言论
可以调用 RtlMultiByteToUnicodeSize 来确定要分配多少内存,或者可能要为 MaxBytesInUnicodeString指定的值,然后再将多字节字符串转换为具有 RtlMultiByteToUnicodeN的 Unicode。 返回的值不包括 Unicode 字符串的 NULL 终止符的空间。
与 RtlMultiByteToUnicodeN一样,RtlMultiByteToUnicodeSize 仅支持映射到系统启动时安装的当前系统 ANSI 代码页的预编译 Unicode 字符。
有关其他字符串处理例程的信息,请参阅 Run-Time Library (RTL) 例程。
要求
要求 | 价值 |
---|---|
目标平台 | 普遍 |
标头 | ntifs.h (include Ntifs.h) |
库 | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | < DISPATCH_LEVEL |