公司开发一个软件,是多语言版本的,要求开发后的程序里面不要出现zh-CN、en-US、zh-TW等多语言包,最好把这些语言包集成到一个dll文件中,这样传给客户的时候用户不能通过安装后的文件夹看出系统有什么语言。这个该怎么做的。用xml文件配置多语言不行,因为文件太大。我用资源文件,就是在每个form中设置多语言,选择要设置的语言,生成各个语言配置文件,如Form1.zh-CN.resx、Form1.en-US.resx 这种方式做的

解决方案 »

  1.   

    用什么存放都是简单的事情
    不能出现zh-CN、en-US、zh-TW
    那就换成2052,1033,1028
    甚至换成A,B,C然后加密都是可以的
    多语言的难点在于翻译和界面:
    1. 图片要换不?
    2. 文字太长,要截取?
    3. 代码里各种硬编码的字符串,包括MessageBox,ListView和DataGridView表头等等
      

  2.   

    这个可以参考,完全满足你的需求 http://download.csdn.net/detail/yanggangqiang520/4509281
      

  3.   

    楼上的这个我下载看了,不是我想要的,你这个是最基本的利用资源文件实现多语种的设置,生成的文件中含有语种文件夹。我就是不想在编译后的程序中出现语种文件夹。或者这样也行,编程时我实现多语种,比如中日韩。在发布时我只发布一种比如韩语给用户。删除kor文件夹,修改里面的dll文件的文件名,可以做到这一点也行
      

  4.   

     能修改语言文件夹的名字,如en-US等也行。这个如何做到啊
      

  5.   

    找到了一个很烂的解决方案。修改.csproj文件中相应的语种资源文件名字,修改每个form的资源文件中相应语种的名字。例如zh-CN,修改资源文件中的zh-CN为zh,修改form1.zh-CN.resx为form1.zh.resx这样编译没有问题,修改后生成的zh文件夹中可能是日语或者韩语。呵呵,骗过了编译器。现在也只有如此办法了