本地化机制提供了一种非常简单而强大的方法来创建多语言应用程序。
BCGControlBar语言包文件:
本地化文件位于BCGCBPro \ L. *目录中,其中* - 语言名称前缀(FRA - 法语,ITA - 意大利语,...)。 特定于语言的资源DLL位于BCGControlBar \ Bin目录中:
使用BCGControlBar DLL版本进行本地化:
将以下成员添加到您的应用程序类:
1
|
HINSTANCE m_hinstBCGCBProRes;
|
在应用程序的InitiInstance()中添加DLL资源初始化:
1
2
|
m_hinstBCGCBProRes = LoadLibrary (_T(
"BCGCBProRes***.dll"
));
// *** - language
BCGCBProSetResourceHandle(m_hinstBCGCBProRes);
|
在ExitInstance中卸载资源DLL:
1
|
FreeLibrary (m_hinstBCGCBProRes);
|
使用BCGControlBar静态库版本进行本地化:
在项目的“资源包含”对话框(View | Resource Includes)中修改
#include“BCGCBPro.rc”
至
#include“L。*** \ BCGControlBar.rc”// ***语言
#pragma code_page(代码)
例如
#include“L.FRA \ BCGControlBar.rc”
#pragma codepage(1252)
把库资源翻译成新语言
在您的BCGControlBar目录下,创建名为“L。***”的新子目录,其中“***”是语言名称前缀。
从任何其他现有语言目录复制以下文件:
BCGCBRes.dsp
BCGCBRes.dsw从BCGControlBar目录复制BCGCBPro.rc(英语资源)。将其重命名为BCGControlBar.rc
在Visual C ++中,打开BCGCBRes项目
删除资源版本信息
将DLL输出文件名更改为“.. \ .. \ bin \ BCGCBProRes ***。dll”(*** - 是语言名称前缀)
翻译对话框,字符串和菜单资源。
建立项目。因为BCGControlBar.rc具有对公共BCGControlBar资源(位图,图标和游标)的引用,所以您将收到有关创建“RES”子目录的通知。这是Visual Studio资源编辑器问题 - 它不会以正确的方式解释从项目设置中获取的路径。只需回答是,L。*** \ RES将被创建。当编译资源文件(静态和DLL模式)时,将采用正确的RES路径(BCGControlBar dir \ RES)。语言资源DLL将放入BIN目录中。