我尝试使用一个dll库绘制文本,该库只有ANSI版本封装的Windows ANSI api接口(interface),但我需要使用utf-8存储字符串数据。我不想使用 MultiByte/WideChar 函数转换字符串,因此我想要一种方法来更改应用程序中的 CP_ACP,以便我可以将字符串数据输入到 ANSI api 中。谢谢。
ps:我不想更改系统默认代码页。
最佳答案
CP_ACP
表示系统 Ansi 代码页。您无法在每个进程或每个线程的基础上更改它。这是系统范围的设置。如果 DLL 确实在内部依赖于 CP_ACP,那么每当与 DLL 交互时,您别无选择,只能将 UTF-8 转换为 UTF-8。
关于c++ - 如何在应用程序中更改 Windows ANSI api 的 CP_ACP(0)?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14126868/