首页 > 解决方案 > CreatePropertySheetPage 本地化优先考虑中性语言

问题描述

我有一个旧的 WTL 项目,基本上是一个带有几个属性页的属性表表单。我想为它添加本地化。Microsoft 真的非常希望我使用单独的纯资源 DLL 进行本地化。我想看看我是否可以在同一个可执行文件中使用所有语言特定的资源。

当我添加我调用的属性页时CPropertySheetImpl<T>::AddPage,它在内部CreatePropertySheetPage使用类型参数调用PROPSHEETPAGE。如果资源 (.rc) 文件中有中性语言的对话框,我认为我可以设置语言,SetThreadLocale或者这些都不起作用。SetThreadUILanguage系统会覆盖线程设置并选择中性语言对话而不是我选择的语言。如果有两种特定语言(例如英语和德语),则系统会选择在线程设置中设置的一种。

这是 Windows 的已知“功能”,还是我做错了什么?也许我不应该拥有中性语言的资源。也许有更好的选择SetThreadLocale

标签: winapivisual-c++wtl

解决方案


推荐阅读