哦迫切需要了解如何实现多语言版本支持。
怎样实现根据语言不同调入包含不同语言的资源文件

解决方案 »

  1.   

    采用不同的资源DLL文件,比如你把英文资源全放在english.dll中,把中文资源全放在china.dll中。
    在主程序中调用根据不同的选择,连接不同资源的dll文件,
    然后用AfxSetResourceHandle()全局函数来设置资源,这样,在你的主程序有使用的资源就是你选择语言的资源,各DLL中的资源ID一定要一致
      

  2.   

    (狗尾续貂)创建纯资源 DLL请参见
    DLL
    纯资源 DLL 是仅包含资源(如图标、位图、字符串和对话框)的 DLL。使用纯资源 DLL 是在多个程序之间共享同一组资源的好方法。提供其资源被针对多种语言进行本地化的应用程序也是一种好方法(请参阅 MFC 应用程序中的本地化资源:附属 DLL)。若要创建纯资源 DLL,请创建一个新的 Win32 DLL(非 MFC)项目,并将资源添加到此项目。 在“新建项目”对话框中选择“Win32 项目”,并在“Win32 项目向导”中指定 DLL 项目类型。 
    为 DLL 创建一个包含资源(如字符串或菜单)的新资源脚本,并保存该 .rc 文件。 
    在“项目”菜单上单击“添加现有项”,并在项目中插入这个新的 .rc 文件。 
    指定 /NOENTRY 链接器选项。/NOENTRY 防止链接器将 _main 引用链接到 DLL 中;此选项是创建纯资源 DLL 所必需的。 
    生成 DLL。 
    使用纯资源 DLL 的应用程序应调用 LoadLibrary 来显式链接到 DLL。若要访问资源,请调用一般函数 FindResource 和 LoadResource,这两个函数对任何类型的资源都有效,或调用下列资源特定的函数之一: FormatMessage 
    LoadAccelerators 
    LoadBitmap 
    LoadCursor 
    LoadIcon 
    LoadMenu 
    LoadString 
    使用完资源后,应用程序应调用 FreeLibrary。(look up the msdn)