English 中文(简体)
如何获得窗口 xp gui 默认代码页面?
原标题:How to get windows xp gui default code page?

问题是,在非英文版本的 XP 代码页面上, 用于控制台和吉字应用程序的 XP 代码页面有所不同, 例如,如果我在波兰版本的 XP 代码页面上写在控制台:

echo zażółć gęślą jaźń > somefile.txt

该文件的内容是:

zaľ˘† g©lĄ ja«ä 

如果将它放入 cmd 文件, 就不会发生这种情况。 这就是这个带擦亮字母的文字。 但如果我创建了一个文件或目录, 名称为非英文字符, 那么不管它从 cmd 或从 cmd 手指 运行, 效果总是胡言乱语 。

因此,我的问题是,如何获得其他窗口运行的第二个代码页面。 在我看来,这个CP是 1250 - 但如何从 c++ 获得这个数字?

getConsoleCP () getConsoleOutputCP () 都返回 852 (正确) 和 GetTread Lolige () 给出了 1045 。

如果我尝试 chcp 1045 它会给出“错误的代码页面 ” 。

最佳回答

<编码>HKEY_LOCOL_MACHINESYSTENCENCRNATSET ControlNCodPageACP - 本注册键存储 ANSI 代码页号(在您的情况下应为 1250) 和 HKEY_LOCAL_MACHINESYSTENCENCRCRNATSet ControlNSNCodePageOEMCP 存储 OEM 代码页面。

哦,还有"http://msdn.microsoft.com/en-us/library/windows/desktop/dd318070%28v=vs.85%29.aspx" rel=“nofollow”标题=“GetACP”标题 >GetACP