您的位置:首页 > 其它

Devexpress DXperience 重编译汉化的方法

2010-07-19 05:41 381 查看
http://blog.csdn.net/sqyfzx/archive/2009/04/17/4086232.aspx

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/Microsoft Visual 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>

本文来自CSDN博客,转载请标明出处:http://blog.csdn.net/sqyfzx/archive/2009/04/17/4086232.aspx
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: