1、 必须有DXperience相应版本的全部源代码SourceCode。把全部源代码复制到\Program Files\Developer Express .NET vX.X\Sources目录。目标目录的默认位置是在C:\Program Files\Developer Express .NET vX.X\Sources\(其中X.X为应替换相应的版本号,以下不再重复说明)。
2、 必须创建一个强名称的文件。要创建此文件,必须执行下面的命令建立你自己的密钥:sn -k StrongKey.snk并且复制新生成的强命名密钥StrongKey.snk文件到Sources目录下的\ Devexpress.Key \目录。该强名称Sn.exe工具位于\Program Files\MicrosoftVisual Studio 8\SDK\v2.0\Bin目录。
提取导出公钥命令为:sn -p StrongKey.snk key.txt ;显示公钥命令为:sn -tp key.txt 或 sn -Tp StrongKey.snk 。 
3、 解压编译脚本。将下载的相应版本的编译脚本压缩包解压,然后将所有文件(不包括子目录
PatchInternalVisibleTo)复制到DXperience安装目录的Sources子目录下。
4、 如果重编译后要恢复原来官方的assembly请运行clear.bat ,然后在修复模式重新安装DXperience。
5、 在记事本中打开defines.bat。如果在Visual Studio 2005中,将vsver = vs2008改为:vsver = vs2005 。
6、 运行clear.bat删除全局缓存中试用版的程序集DLL 。如果assembly已被锁定,请关闭所有正在运行的应用程序并重新启动IIS Admin服务,重新运行clear.bat 。
7、 运行buildall.cmd重新生成正式版的程序集DLL。编译时可能会显示一些黄色的警告(warning),不用担心,不会出现错误(error)的。
8、 重新生成工具箱选项卡。点击 开始菜单 -> 所有程序 -> Developer Express .NET vX.X -> Tools -> ToolboxCreator后先删除试用版的VS2005/VS2008工具箱选项卡,并重新生成正式版的VS2005/VS2008工具箱选项卡。
9、 从PublicKeyToken.txt(PublicKeyToken.txt文本文件是前面步骤编译时自动生成的,记录了公钥标记,在源码目录Sources下用新的公钥重新编译DevExpress .*的assembly 。参见下图:
10、 通过DXperience提供的项目转换器ProjectConverter升级原有的应用程序有三种方法:
1)、如果你一直使用正式版,则使用其提供的工具ProjectConverter,指定应用程序的目录然后升级即可。具体方法为:执行 开始 -> 所有程序 -> Developer Express .NET vX.X -> Tools -> ProjectConverter在弹出的对话框中选择VS项目文件所在的路径并去掉创建备份文件的勾然后按Upgrade就行了ProjectConverter会将项目中所有对老版本DXperience程序集的引用转换为新版本。
2)、如果你使用的是重新编译版,请找到编译版的公匙,用以下命令升级:
RUN 命令:
"C:\Program Files\Developer Express .NET vX.X\Tools\DXperience\ProjectConverter.exe" /s /k:公匙 "your_project_directory"
"C:\Program Files\Developer Express .NET vX.X\Tools\DXperience\ProjectConverter.exe" /s /k:
49d90c14d24271b5 "<your_project_directory>"
3)、最原始的方法是在工程中移除所有DEV控件的引用,然后重新添加即可。
11、 在DXperience的源代码中,你会发现Dev已经把各种资源放在了一个叫做LocalizationRes.resx的资源文件里面。该资源位于C:\Program Files\Developer Express .NET vX.XSources路径下各相应目录下。
1.         把LocalizationRes.resx文件拷贝一份到你自己的某个目录下,重命名为你需要的culture,比如要本地化为德文的话,就更名为"LocalizationRes.de.resx",当然我们需要的是中文,于是把它更名为LocalizationRes.zh-CHS.resx。窗体或用户控件也都用一个resx文件,同样可以使用这种方式汉化。
2.         现在我们可以借助VS开发环境对这个文件进行汉化了,如下图所示:
3.         现在我们需要借助资源文件生成器Resgen.exe把这个文件转化为一个resources文件。该文件位于E:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\Bin目录中。
resgen LocalizationRes.zh-CHS.resx LocalizationRes.zh-CHS.resources。
4. 把这个资源文件打包到卫星配件中去,仍然使用VS提供的一个小工具程序集链接器--Al.exe。下面的命令行就是把LocalizationRes.zh-CHS.resources文件打包成卫星配件了。al /out:DevExpress.XtraEditors.Resources.Dll /v:0.0.0.0 /culture: zh-CHS /embed:LocalizationRes.zh-CHS.resources,DevExpress.XtraEditors.LocalizationRes.zh-CHS.resources /keyfile:strongkey.snk。上面各种参数就不赘述了。需要注意的是keyfile对应的strongkey必须跟DevExpress相应组件指定的strongkey一致。通过al命令也可以把多个resources文件打包成一个单一的配件。如下面这条命令把多种资源打包成配件。
%al% /out:..\zh-CHS\DevExpress.XtraPrinting.%VER_DLL%.Resources.dll /v:%VER_PSYS% /culture:zh-CHS /embed:ComponentEditorForm.zh-CHS.resources,DevExpress.XtraPrinting.ComponentEditorForm.zh-CHS.resources
/embed:LocalizationRes.zh-CHS.resources,LocalizationRes.zh-CHS.resources /embed:HeaderFooterForm.zh-CHS.resources,DevExpress.XtraPrinting.Native.WinControls.HeaderFooterForm.zh-CHS.resources /embed:WatermarkEditorForm.zh-CHS.resources,DevExpress.XtraPrinting.Native.WinControls.WatermarkEditorForm.zh-CHS.resources/keyfile:%KEYFILE%
通过这里大家可以看出,已经把几个窗体的资源也打进来了,不过需要注意的是/embed里的第二个参数要加上窗体或控件所在的命名空间。
现在卫星配件已经制作出来了,现在需要把它配置到一个地方以便Framework能够找到它。通常有两种方法,一种是直接把它放到GAC(Global Assembly Cache作用是可以存放一些有很多程序都要用到的公共Assembly)中,方便省事;另一种是把它们放到具体的程序目录下。
要放到GAC里面,简单的方法就是直接把卫星配件拖放到"Windows\assembly"目录下,也可以使用Microsoft提供的工具gacutil,使用如下命令:
gacutil /i:LocalizerRes.zh-CHS.resources.dll
如果不放到GAC中,那就放在你的程序的所在目录下(参见利用官方汉化资源的方法)。
利用官方汉化资源的方法:
1、        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CHS");      //增加此行代码
            Application.Run(new Form1());
        }
2、将汉化官方汉化资源包中的zh-CN和zh-CNS两个目录复制到你的程序目录下(参见下图):
评估版下载地址http://www.devexpress.com/Downloads/NET/
编译脚本http://www.devexpress.com/Support/Center/KB/p/A609.aspx
官方卫星化资源http://www.devexpress.com/Support/Center/KB/p/A609.aspx
官方汉化资源http://www.devexpress.com/Support/Center/KB/p/A421.aspx
默认路径为 D:\Program Files\Developer Express .NET v8.3\Tools\DXperience>
出处:http://blog.csdn.net/sqyfzx/archive/2009/04/17/4086232.aspx

static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.CultureInfo("zh-CHS");      //增加此行代码
            Application.Run(new Form1());
        }
其实上面这一段可以不用加的,.NET会自动按操作系统的区域选项来识别,除非要手动切换到其它语言或要做多语言版本才有必要;

DXperience重编译汉化的方法的更多相关文章

  1. DevExpress DXperience 的本地化(汉化)方法

    Devexpress的.net组件目前非常流行,在国内开发者中有非常高的热度,但是由于是国外控件,我们经常遇到的一个问题是汉化.目前Devexpress公司2011.2版以后使用了统一的本地化模式,针 ...

  2. recovery编译汉化源码开源地址

    本Recovery基于xiaolu开源的不完全汉化版源码,进行完全汉化,并合并Philz的最新源码. 汉化耗费我将近一整天的精力,纯手打,可能有遗漏或翻译不准的地方,请到微博反馈 本Rec完全开源,便 ...

  3. Adobe flash CC 汉化破解方法

    转载整理自:http://www.sdifenzhou.com/flashprofessionalcc.html 断网,解压下载的破解dmg文件得到这些文件 第一步,解压安装包,安装,并打开,不要输入 ...

  4. DevExpreess汉化使用方法及汉化包

    1.在程序入口加入代码: System.Threading.Thread.CurrentThread.CurrentUICulture = new System.Globalization.Cultu ...

  5. 将Magento后台汉化的方法

    方法一: 打开/app/code/core/Mage/Adminhtml/Block/Catalog/Product/Attribute/Set/Main.php文件, 找到几个用来显示的代码,替换成 ...

  6. recovery编译汉化

    当BoardConfig.mk中定义了recovery的字体且为中文字体时,自动编译为中文版,否则编译为英文版 例如: BOARD_USE_CUSTOM_RECOVERY_FONT := \" ...

  7. eclipse 汉化详细方法

    1.首先确认自己的 eclipse 是哪个版本,这个很关键,涉及到后面要用到的语言包需要与版本匹配,启动 eclipse,观察对应的版本号,比如我用的是 Photon 版本 2.参照官方给的方法进行下 ...

  8. 解决Acunetix 12中文汉化的方法

    最近下载一款测试软件acunetix,苦于满屏英文的苦恼,看不懂,于是乎就问度娘,结果度娘就是给中文破解包: 我是12版的,网上提供的都是11版的,没法用.怎么办呢?还好我是做测试的,平时做兼容性测试 ...

  9. Eclipse 离线汉化的方法

    本文感谢:http://jingyan.baidu.com/article/e75057f28401a8ebc91a899e.html 首先进入网址:http://www.eclipse.org/ba ...

随机推荐

  1. UIApplication及UIWindow

    *:first-child { margin-top: 0 !important; } body > *:last-child { margin-bottom: 0 !important; } ...

  2. 使用git管理github上的项目

    使用git可以把我们的项目代码上传到github上面去,方便自己管理,如何使用git?觉得是每位程序猿所必需要有的谋生技能,所以在此记录一下自己学会使用的这个过程: 一.需要注册github账号,这样 ...

  3. git 仓库操作

    一.git 仓库从远程clone 首先要建立一个本地空目录文件比如 RuntimeJsonModel,然后: 1. git init 2. git clone https://github.com/G ...

  4. 防范ARP网关欺骗, ip mac双向绑定脚本

    客户局域网内的一台数据库服务器, 重新安装操作系统后,不能上网了,ping网关192.168.0.1出现在800多ms的响应时间,还会超时丢包,检查了ip,路由配置,都没有问题.通过IE打开路由器管理 ...

  5. EB(存储单位)

    abbr.艾字节,1EB=1024PB 计算机的存储单位 位 bit (比特)(Binary Digits):存放一位二进制数,即 0 或 1,最小的存储单位. 字节 byte:8个二进制位为一个字节 ...

  6. Java基础学习(学习IT企业必读的324个JAVA面试题.pdf 整理)

    一.Java程序基础 javac 文件名.java    编译程序 java 类名               运行java程序 代码规范中,一下几点要注意: 包名:包名是全小写的名词,中间可以由点分 ...

  7. iPhone 6 (iOS 9.2) extractiion failed by XRY

    My colleague extracted an iPhone 6 with XRY and it is iOS 9.2 . Unfortunately the Wizard crashed and ...

  8. 学习使用LaTex排版文字输出为pdf(1)

    学习用latex写我的简历. 我在ubuntu环境下,先下载所需软件,命令百度就可以. 先创建一个a.tex,写上 \documentclass{article} \usepackage{CJK} \ ...

  9. 事件委托和this

    JavaScript不仅门槛低,而且是一门有趣.功能强大和非常重要的语言.各行各业的人发现自己最混乱的选择是JavaSscript编程语言.由于有着各种各样的背景,所以不是每个人都对JavaScrip ...

  10. jQuery--each遍历使用方法

    定义和用法 each() 方法规定为每个匹配元素规定运行的函数. 提示:返回 false 可用于及早停止循环. 语法 $(selector).each(function(index,element)) ...