根据网上的
BCGControlBar Pro V7.3.1支持多语言创建工程向导及制作过程文章
二、制作BCGControlBar Pro 7.31支持多语言资源创建工程向导的方法及解决问题的过程
有没有制作既支持英语又支持中文资源的BCGControlBar Pro 7.31创建工程向导的可能?经历了以下过程,最终解决了问题。
首先是在向导自定义的第一页对话框中添加一个“Check Box”的控件,选择标识符为IDC_MDI_TAB_GROUPS。否则在用向导创建工程进入向导自定义的第一页对话框时将会弹出“试图执行系统不支持的操作”错误对话框,创建工程向导不能向下进行。
(一)、仅在语言支持中增加中文语言支持,而不汉化BCGPAppWizard的Template文件夹下下的任何资源文件。
1、安装BCGControlBarPro后的目录下有向导工程BCGPAppWizard,用VC打开BCGCBProAppWizard.dsw,浏览BCGBAppWizardaw.cpp文件,在InitCustomAppWiz()函数找到SetSupportedLanguages(_T("English [United States] (APPWZENU.DLL);0x40904b0")),把该语句修改为SetSupportedLanguages(_T("中文 [中国] (APPWZCHS.DLL);0x80404b0\n英语[美国](APPWZENU.DLL);")),重新编译形成创建工程向导的awx文件。
2、用该创建工程向导创建一新工程,选用中文语言。编译后执行,debug版会弹出一错误对话框,选择“忽略”,程序可继续执行,程序菜单已为中文,但为MFC标准资源菜单,无BCGControlBar Pro 7.31扩充菜单,同时,按“关于”菜单会弹出“试图执行系统不支持的操作”错误对话框。对于Release版唯一不同是开始不会出现错误对话框,其余与debug相同。
3、用该创建工程向导再创建一新工程,选用英文语言。编译后执行,一切正常,具有英文菜单,并有BCGControlBar Pro 7.31扩充菜单。我按第1个步骤做了之后,然后使用awx添加一向导,但不知道为什么在向导的Step 1,就停止了,没有进入到Step 2,我完完全全按照上面的过程来的..
请大家做的人帮个忙.帮我分析一下...谢谢

解决方案 »

  1.   

    晕,楼主用的是原文作者用来证明是失败的方法,这个方法原文作者写出来只是一个失败的例子,楼主没有仔细看全文。(原文作者很搞笑,把错误的方法也写在上面,本意是将自己的失败经历写在上面,结果却误导了别人,偶当时也被误导了)
    汉化向导光是改SetSupportedLanguages(_T("中文[中国] (APPWZCHS.DLL);0x80404b0\n英语[美国] (APPWZENU.DLL);0x40904b0"));是没用的,还要修改模板资源,中文的模版,英文的资源,肯定会出错。
    正确的方法见原文第三点,前两点是必要的,而楼主只完成了第一点,必须三点都完成中文向导才能正常运行。
      (三)、制作BCGControlBar Pro 7.31支持多语言资源创建工程向导的方法   使用工具:文件比较器,使用UltraCompare。  1、经比较自己用“custom AppWizad”创建定制向导工程的LOC_chs.rc、DLGLOC_chs.rc和LOC_enu.rc、DLGLOC_enu.rc,中文资源文件是英语资源文件一对一的翻译。因此,可用自己用“custom AppWizad”创建定制向导工程的LOC_chs.rc、DLGLOC_chs.rc作为BCGControlBar Pro 7.31创建工程向导TEMPLATE的中文资源文件的基础,将其复制到BCGPAppWizard\Template目录。  2、使用UltraCompare同时打开3个文件的文本比较模式,将“custom AppWizad”创建定制向导工程的LOC_enu.rc作为第一打开文件,将BCGPAppWizard\Template目录下的LOC_enu.rc作为第二打开文件,将BCGPAppWizard\Template目录下的LOC_chs.rc作为第三打开文件,比较三个文件,第二文件有的而第一文件无的部分资源是BCGControlBar Pro 7.31特有的资源,将该部分特有资源插入第三个中文资源文件相应位置,至此大部分为中文的资源文件已形成,需翻译的只是BCGControlBar Pro 7.31特有部分资源,对另一资源文件作相应处理(其实对于DLGLOC_chs.rc仅是增加了几行注释而已),所需中文资源文件已形成。  3、用文本编辑器打开BCGPAppWizard\BCGCBProAppWizard.rc,在TEMPLATE节增加支持中文资源的一组文件列表,即(二)中的一组文件。同时在BCGPAppWizard\Template目录下增加该组中除两个rc资源文件外的其它文件、可采用复制BCGPAppWizard\Template目录下对应的英语语言文件组,将_enu改为_chs。  4、重新编译,经创建程序证实功能一切正常。  从这一过程可看出,工程向导创建程序框架时,根据使用的语言在BCGCBProAppWizard.awx中查找对应的语言标识符对应的资源,如果BCGCBProAppWizard.awx中无对应的资源,就使用MFC中相应语言的标准资源。了解了查找资源的次序,再来制作支持多语言的创建工程向导就容易了。本文虽是针对BCGControlBar Pro,对其它创建工程向导增加语言支持的制作也可采用以上4个步骤实践。
    用该方法确实可以成功的改出一个中英文都支持的Wizard,不过修改资源相当麻烦,搞了几天:)
      

  2.   

    已经解决..网上down了一个下来..
    自己试了别的,,后来发现,,原来.是有些BCGControlBar Pro V7.3.1支持多语言创建工程向导及制作过程文章....这一篇..有些是正确的..有些是错误的....