非 unicode 程序的语言更改 ini 阅读

Posted

技术标签:

【中文标题】非 unicode 程序的语言更改 ini 阅读【英文标题】:Language for non-unicode programs change ini reading 【发布时间】:2011-08-26 14:13:19 【问题描述】:

我有一个非 unicode 应用程序,它使用 unicode 版本的 ini 读取函数,例如 GetPrivateProfileSectionW 和 GetPrivateProfileStringW。当“非 unicode 程序的语言”设置为英语时,该程序运行良好。

当我将此设置更改为中文 (PRC) 时,GetPrivateProfileSectionW 和 GetPrivateProfileStringW 函数返回 null。

我必须保持这个设置为中文,因为当“非 unicode 程序的语言”选择英文时,CComBSTR.LoadString 没有按预期工作,它将中文字符加载到资源 DLL 中作为问号。

有什么想法吗?

谢谢。

【问题讨论】:

【参考方案1】:

迈克尔·卡普兰explains。解决方案是使用 Unicode INI 文件,它不依赖于“非 unicode 程序的语言”。

【讨论】:

【参考方案2】:

“非 Unicode 程序的语言”也选择用于文件的默认代码页。美国英语通常是 Windows-1252。中文会有所不同,比如 GB2312 或 GBK。使用记事本打开您的 .INI 文件并以“ANSI”格式保存,这将是 Microsoft 对所选非 Unicode 语言的默认设置。

【讨论】:

以上是关于非 unicode 程序的语言更改 ini 阅读的主要内容,如果未能解决你的问题,请参考以下文章

php unicode

unicode转汉字的软件或JS程序

在文件中搜索非Unicode字符

关于emoji,Go语言可以这么操作

西欧语言非unicode数据的sql整理排序

使用 Unicode 编码