微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

winapi – 如何以编程方式确定Windows的当前默认代码页?

我必须将VB6应用程序的字符串输出的编码转换为特定的编码.

问题是,我不知道字符串的编码,因为:

According to the VB6 documentation when accessing certain API functions the internal Unicode strings are converted to ANSI strings using the default codepage of Windows.

因此,字符串输出的编码在不同系统上可能不同,但我必须知道它才能执行转换.

如何使用Win32 API读取代码页,或者 – 如果没有其他方法 – 通过阅读注册表?

通过使用 GetACP – Win32 API调用返回代码页,它可能更简洁! (代码页通常称为“ANSI”)
int nCodePage = GetACP();

此外,许多API调用(例如MultiByteToWideChar)接受始终为means “use the system code page”的常量值CP_ACP(零).因此,您可能实际上不需要知道当前代码页,具体取决于您要对其执行的操作.

原文地址:https://www.jb51.cc/windows/364740.html

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 dio@foxmail.com 举报,一经查实,本站将立刻删除。

相关推荐