0

如何在 Visual Studio for Win32 Projects 中本地化多个 .rc 文件?我已经按照这里的教程http://multilanguageui.blogspot.co.uk/描述了如何本地化 win32 解决方案 2 种语言:英语(美国)和法语(法国),它们应用于项目 en-US 和 fr-分别为FR。但是,每个项目只有一个资源文件:en-US.rc 和 fr-FR.rc。但我不清楚,如果每种语言有 2 个或更多资源文件,例如 en-US.rc、en-US2.rc、fr-FR.rc 和 fr-FR2.rc,我应该更改什么。当我尝试创建这些额外的 .rc 文件并在其中放置一个 STRINGTABLE 资源,然后构建项目时,我收到错误:

1>CVTRES:致命错误 CVT1100:重复资源。类型:MUI,名称:1,语言:0x0409 1>LINK:致命错误 LNK1123:转换为 COFF 时失败:文件无效或损坏

我尝试将 TLBID:id 值更改为 1 以外的值,因为这是针对此问题的建议解决方案,但它不能解决问题。

任何帮助,将不胜感激。

4

2 回答 2

0

我们的解决方案中有多个 DLL 项目,每个项目只包含一组资源。在运行时InitInstance(),我们选择适当的语言 DLL,代码如下

hInst_aRes = LoadLibrary(sResourceDllName);
if (hInst_aRes == NULL)
{    // handle <resoure-DLL not available>
     return FALSE;
}
AfxSetResourceHandle(hInst_aRes);

并用于hInst_aRes加载字符串、对话框、...

于 2013-06-28T11:02:58.127 回答
0

好的,我按照这里的教程http://msdn.microsoft.com/en-us/library/windows/desktop/ee845043(v=vs.85).aspx它也适用于多个 .rc 文件。

于 2013-07-02T15:00:53.410 回答