gpt4 book ai didi

windows - MFC 本地化不适用于 Windows 7 的 MUI 安装

转载 作者:可可西里 更新时间:2023-11-01 10:02:01 36 4
gpt4 key购买 nike

好的,所以我们正在编写 MFC 应用程序以利用 built-in localization support with satellite DLL's自 MFC 7 以来。一切似乎都运行良好,除了我的 Windows 7 企业版安装了 MUI 支持并使用瑞典语 UI 而不是英语 UI 仍然在我们的应用程序中显示英语 UI。

该应用程序使用瑞典语作为其默认语言,具有 AppNameENU.dll 形式的英语本地化 DLL,因此 MFC 实际上是 有意 在这种情况下切换到英语,就好像它不关心启用 MUI 的 Windows 操作系统中的用户选择,以及 Windows 安装的默认发布语言?

从 MSDN 页面(上面的链接)中,我读到它是因为 MFC 实际上应该考虑这些设置,但我不是 100% 确定。有人可以澄清一下吗?

最佳答案

这是因为 MFC 对语言选择的支持有一个设计错误:只有当没有 DLL 匹配用户或系统语言时,它才会决定从 exe 加载资源。

在你的例子中:它设置了它的(有序的)语言列表:

  1. 瑞典语(用户语言)
  2. 英语(系统语言)

然后它会查找您的 DLL(错误:只有 dll,而不是 exe!):与瑞典语不匹配。但是英语有匹配项!

解决方案:使用我的 CLanguageSupport类(class)。即使在您的用例中也能正常工作。

请随意使用。您只需要几分钟就可以将它合并到您的应用程序中,并且它使用与您已经实现的完全相同的 DLL 方案。 (提示:不要忘记必须取消 CWinApp::InitInstance() 调用的步骤!)

此外,如果您有兴趣(这是可选的),您可以获得一个自动语言菜单,让用户选择自己的偏好,以防默认设置不是他想要的。

如果您正在寻找一款出色的工具来帮助您管理翻译,请考虑 appTranslator ;-)

HTH,

关于windows - MFC 本地化不适用于 Windows 7 的 MUI 安装,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1553656/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com