本人有一套软件是DELPHI做的,中文覆盖了PAS文件和DFM文件,现想做成国际化版本,PAS中的中文用INI文件的方式提取了,但DFM还一直未资源化,本人不想将DFM保存多份来实现国际化,请各位大侠指教!

解决方案 »

  1.   

    不知道这样行不行,把所有的显示文字,包括提示信息,都做成一个资源文件,然后封装在dll里,如有几种语言就做几个文件,比如有lanCN.dll,lanEN.dll,lanHK.dll, 包含了3种语言,需要那种语言就加载哪个dll库文件.
      

  2.   

    好方法,PAS文件中的可以提取出来,但DFM中的如何提取,请指教,谢谢!
      

  3.   

    PAS中的中文可以用ID代替,然后将中文放在INI文件中并对应代码中的ID,程序启动时加载
    但DFM不是很好办,没办法实现资源化:
      如果在程序初始化时加载每个控件的CAPTION,代码量太大。
    不知还有什么好方法,请各位指教。
      

  4.   

    呵呵, D本来就有语言包支持. 如果你的代码开发比较规范, 就用你现在代码,然后Project-Languages-ADD,就可以生成资源包了
      

  5.   

    9494, delphi 的 resource dll 多好用..
      

  6.   

    我上面讲得已经很具体了啊,打开你的项目,然后在菜单 Project -Languages-ADD就看到了啊
      

  7.   

    dxgettext +TntUnicode 
    我用下来是最好的多语言的解决方案!
      

  8.   

    dxgettext +TntUnicode不懂呀,请教中...