我想实现程序的多语言切换,就想用Dll文件把string table资源封装起来,不同的语言加载不同的Dll,但是我不知道string table怎么封装,求高人解疑。

解决方案 »

  1.   

    就是创建一个纯资源的DLL啊。这里有一个例子
    http://www.vchome.net/tech/dll_4.htm在应用程序显示的调用这个DLL,使用LoadLibrary函数装入资源DLL,FindResource和LoadResource来装入各种资源,或者使用下列的特定的资源装入函数:    * FormatMessage
        * LoadAccelerators
        * LoadBitmap
        * LoadCursor
        * LoadIcon
        * LoadMenu
        * LoadString 
      

  2.   

    我只想使用string table 其他的不想用 怎么单独装载?
      

  3.   

    一样的,在资源模块中,你只保留string table就行了,其他的都可以删除
      

  4.   

    在程序初始化的时候,例如:C**App::InitInstance()里面加上: 
    SetThreadLocale(MAKELCID(MAKELANGID(LANG_CHINESE, SUBLANG_DEFAULT), SORT_DEFAULT));//调用中文StringTabel 
    SetThreadLocale(MAKELCID(MAKELANGID(LANG_ENGLISH, SUBLANG_DEFAULT), SORT_DEFAULT));//英文 类推...
      

  5.   

    我是问怎么创建资源文件?因为我想单独把string table封装到一个Dll中
      

  6.   

    封装成DLL啊 直接封装呗 资源会包含进去的 你DLL工程下不能新建资源么