当前位置:首页> 正文

如何在安装过程中部署DevExpress控件

如何在安装过程中部署DevExpress控件

本文目录

  • 如何在安装过程中部署DevExpress控件
  • 请教devexpress的winform界面开发基本步骤
  • devexpress与winform区别
  • DEVEXPRESS怎么安
  • 如何使用DevExpress开发用户控件
  • DevExpress安装问题
  • 如何评价DevExpress
  • 葡萄城控件 和 devexpress 什么关系
  • devexpress 12.1.8 怎么破解
  • devexpress为什么要重新编译源码

如何在安装过程中部署DevExpress控件


我们分析DevExpress的特殊补丁发现,他们是一个DOS批处理文件,主要是创建相应的目录,然后把DevExpress的三个特殊文件复制到对应的目录中,就可以实现DevExpress的正常使用了。那个DOS批处理文件内容如下所示。一般我们部署客户端应用的时候,都会制作一个安装包,我们只需要自定义安装操作中正确执行这些DOS命令即可。但是,在实际安装过程中,由于执行Register.bat文件的时候,gacutil.exe会以System目录作为起始目录,那么就会导致以上操作失败,找不到对应的目录,因为默认System目录下面没有gacUtil的文件,更没有要拷贝的DevExpress.Data.v11.1.dll等三个dll文件。那么我们应该如何操作才能正确执行DOS命令,完成顺利部署DevExpress的几个特殊的dll文件呢?1、首先我们创建一个安装工程,并添加以上的特殊注册文件到安装包中,然后修改Register.bat文件的内容,增加一个路径变量“{INSTALL_PATH}“,该路径变量会在安装的时候被替换为具体的路径名称。修改后的文件如下所示。@echooffsetpath=“{INSTALL_PATH}“
gacutil -u “{INSTALL_PATH}\DevExpress.Data.v11.1“
mkdir %windir%\assembly\GAC_MSIL\DevExpress.Data.v11.1\11.1.6.0__b88d1754d700e49a
copy “{INSTALL_PATH}\DevExpress.Data.v11.1.dll“ %windir%\assembly\GAC_MSIL\DevExpress.Data.v11.1\11.1.6.0__b88d1754d700e49a
gacutil -u “{INSTALL_PATH}\DevExpress.Utils.v11.1“
mkdir %windir%\assembly\GAC_MSIL\DevExpress.Utils.v11.1\11.1.6.0__b88d1754d700e49a
copy “{INSTALL_PATH}\DevExpress.Utils.v11.1.dll“ %windir%\assembly\GAC_MSIL\DevExpress.Utils.v11.1\11.1.6.0__b88d1754d700e49a
gacutil -u “{INSTALL_PATH}\DevExpress.CodeRush.Common“
mkdir %windir%\assembly\GAC_MSIL\DevExpress.CodeRush.Common\11.1.6.0__35c9f04b7764aa3d
copy “{INSTALL_PATH}\DevExpress.CodeRush.Common.dll“ %windir%\assembly\GAC_MSIL\DevExpress.CodeRush.Common\11.1.6.0__35c9f04b7764aa3d
REM copy “{INSTALL_PATH}\DevExpress.CodeRush.Common.dll“ “C:\Program Files\DevExpress 2011.1\IDETools\System\DXCore\BIN\DevExpress.CodeRush.Common.dll“if “[%ProgramFiles(x86)%]“ == ““ (copy “{INSTALL_PATH}\DevExpress.CodeRush.Common.dll“ “%ProgramFiles%\DevExpress 2011.1\IDETools\System\DXCore\BIN\DevExpress.CodeRush.Common.dll“) else (copy “{INSTALL_PATH}\DevExpress.CodeRush.Common.dll“ “%ProgramFiles(x86)%\DevExpress 2011.1\IDETools\System\DXCore\BIN\DevExpress.CodeRush.Common.dll“)echo ’OK’pause2、创建一个安装包后,并增加一个自定义安装项目,命名为InstallerAction项目,然后创建一个“安装程序类”,如下所示项目工程如下: 3)然后我们修改“安装程序类”的代码,覆盖Install函数,主要是用来替换Register.bat批处理文件的路径变量“{INSTALL_PATH}“,如下代码所示 [RunInstaller(true)]
publicpartialclass InstallAction : Installer{public InstallAction(){InitializeComponent();}publicoverridevoid Install(IDictionary stateSaver){base.Install(stateSaver);try {string physicalRoot = this.Context.Parameters[“targetdir“]; // 安装物理路径try {
//由于执行Register.bat文件的时候,gacutil.exe会以System目录作为起始目录,
//因此在Bat文件中设置一个参数,安装的时候替换为具体的目录string Register = Path.Combine(physicalRoot, “Register.bat“);
ReplaceName(Register, “{INSTALL_PATH}“, physicalRoot);}catch { }string registerFile = Path.Combine(physicalRoot, “Register.bat“);
RunDos(registerFile, ““, false);}catch (Exception ex){WriteLog(ex.ToString());}}///《summary》/// 在运行脚本之前把脚本中的指定名称替换成新的名词
///《/summary》///《param name=“filePath“》脚本文件名《/param》///《param name=“oldDBName“》原有的名称《/param》///《param name=“newDBName“》新的名称《/param》privatevoid ReplaceName(string filePath, string oldName, string newName){if (newName.CompareTo(oldName) != 0){string fileText = string.Empty;
using (StreamReader streamReader = new StreamReader(filePath, Encoding.Default)){fileText = streamReader.ReadToEnd();
fileText = fileText.Replace(oldName, newName);}using (StreamWriter streamWriter = new StreamWriter(filePath, false, Encoding.Default)){streamWriter.Write(fileText);}}}///《summary》/// 后台执行DOS文件
///《/summary》///《param name=“fileName“》文件名(包含路径)《/param》///《param name=“argument“》运行参数《/param》///《param name=“hidden“》是否隐藏窗口《/param》privatevoid RunDos(string fileName, string argument, bool hidden){Process process = new Process();
process.EnableRaisingEvents = false;
process.StartInfo.FileName = string.Format(“\“{0}\““, fileName);
process.StartInfo.Arguments = argument;
if (hidden){process.StartInfo.WindowStyle = ProcessWindowStyle.Hidden;}else {process.StartInfo.WindowStyle = ProcessWindowStyle.Normal;}process.Start();
}4、接着在安装包的自定义安装视图中,把刚才自定义安装项目关联到安装包中,如下所示。并修改主输出来自InstallAction的属性项目如下所示5、编译运行程序,我们发现DOS运行的效果如下所示,说明DOS命令正常运行,并复制了文件。6、运行程序,DevExpress界面正常出来,并没有弹出额外的窗体,这真是我们需要的,示例界面如下所示。

请教devexpress的winform界面开发基本步骤


1、首先准备好devExpress控件,然后重新打开VS,在菜单栏会显示如图中的菜单。包含的控件非常多,可以在工具箱看到。

2、为自己的窗体添加可以设置工具条的控件。在工具箱中找到如图所示的控件,添加进自己的窗体。

3、添加该控件后,在窗体的下方会看到如图所示的控件barManager1,表示窗体中已经添加了这种控件。

4、然后右键点击该控件,点击自定义“Customize”按钮。

5、打开如图所示窗体,点击箭头所指的地方,点击New可以新建一个工具条,并且可以设置名称。

6、新建后,会自动在窗体的某个随机位置添加了一个工具条,但是现在还是空的。需要为其添加按钮,点击Add添加即可,然后就跟普通的按钮一样使用了。


devexpress与winform区别


标准的DevExpress样式界面,在我的Winform开发框架中,也分为了传统性界面、DotNetBar样式界面、DevExpress样式界面这三种。顶部样式选择 DevExpress控件可以将窗体的空间运用到极致;Winform开发框架DevExpress的应用,做了好多年Winform的程序的开发,主窗口的界面设计一般都要求做的更好一些,可以根据不同的系统功能模块进行归类整合。
DevExpress是 Developer Express的缩写,DevExpress是一家全球知名的控件开发公司。DevExpress 也特指此公司出品的控件集合或某系列控件或其中某控件。

DEVEXPRESS怎么安


DevExpress的安装说明
编译需要准备的内容如下:

1、DXperience-11.1.8.exe 官方安装包

2、DX2011.1.8_src.7z 源代码

3、DevExpress 11.1 编译脚本(Sources.zip)

4、安装 NNuit 安装包(NUnit-2.6.0.11324.msi)

5、Silverlight 3 Toolkit November 2009.msi

6、DevExpressRegSetup_v11.1.8.exe 注册工具

7、附带一个国际化语言包 Language.zip
安装前需要的开发工具:VS2008、VS2010 SP1版

8、安装 Silverlight Toolkit,在安装目录下找到 Microsoft.Silverlight.Testing.dll和 Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll,将其部署到

GAC中,并将副本拷贝至 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\下
9、所需的DLL(DevExpress.DLL.zip):ActiveReports.Viewer3.dll、ActiveReports3.dll、System.Data.SQLite.DLL、Moq.dll
10、我的编译环境是:Windows 7 X32,VS2010 SP1,需要特别声明,必须安装VS2008,否则,将找不到编译所需的 Microsoft.CompactFramework.CSharp.targets 和Microsoft.CompactFramework.Common.targets
11、将目录 C:\Windows\Microsoft.NET\Framework\v3.5\ 下的Microsoft.CompactFramework.CSharp.targets 和Microsoft.CompactFramework.Common.targets 的副本拷贝至 C:\Windows\Microsoft.NET\Framework\v2.0.50727
编译步骤如下:

1、安装DevExpress控件包,最好选择完全安装,避免出错。

2、运行DevExpressRegSetup_v11.1.8.exe进行注册

3、将源代码(DX2011.1.8_src.7z)解压缩至 C:\Program Files (x86)\DevExpress2011.1\Components\Sources,如果遇到重复的直接覆盖。

4、将编译脚本(Sources.zip)解压至 C:\Program Files (x86)\DevExpress2011.1\Components\Sources。

4、将 安装目录下的Sources 目录下的所有文件属性改为可写,默认是只读。

5、执行 Sources 目录下的 Clear.bat,该脚本将清空所有 GAC 中的 DevExpress 注册信息和清空原有的程序集。

6、将上述第9点所需的DLL副本拷贝至 Sources\DevExpress.DLL 下。

7、使用编译命令:buildall.cmd /silent》build.txt,将使用静默编译,编译过程中的内容输出至 build.txt 文件中。

8、编译完成后,使用命令注册工具箱:ToolboxCreator.exe /INI:toolboxcreator.ini/LOG:gucs.log,卸载工具箱的命令是:ToolboxCreator.exe /INI:toolboxcreator.ini

/Remove。

如何使用DevExpress开发用户控件


1) 设置控件的SizeConstraintsType为DevExpress.XtraLayout.SizeConstraintsType.Custom;

2)设置控件的FillControlToClientArea 为False

3)设置控件的ControlMaxSize的大小(必要时也可以设置ControlMinSize),设置例子如下所示。


DevExpress安装问题


DevExpress的安装说明
编译需要准备的内容如下:

1、DXperience-11.1.8.exe 官方安装包

2、DX2011.1.8_src.7z 源代码

3、DevExpress 11.1 编译脚本(Sources.zip)

4、安装 NNuit 安装包(NUnit-2.6.0.11324.msi)

5、Silverlight 3 Toolkit November 2009.msi

6、DevExpressRegSetup_v11.1.8.exe 注册工具

7、附带一个国际化语言包 Language.zip
安装前需要的开发工具:VS2008、VS2010 SP1版

8、安装 Silverlight Toolkit,在安装目录下找到 Microsoft.Silverlight.Testing.dll和 Microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll,将其部署到

GAC中,并将副本拷贝至 C:\Program Files (x86)\Reference Assemblies\Microsoft\Framework\Silverlight\v4.0\下
9、所需的DLL(DevExpress.DLL.zip):ActiveReports.Viewer3.dll、ActiveReports3.dll、System.Data.SQLite.DLL、Moq.dll
10、我的编译环境是:Windows 7 X32,VS2010 SP1,需要特别声明,必须安装VS2008,否则,将找不到编译所需的 Microsoft.CompactFramework.CSharp.targets 和Microsoft.CompactFramework.Common.targets
11、将目录 C:\Windows\Microsoft.NET\Framework\v3.5\ 下的Microsoft.CompactFramework.CSharp.targets 和Microsoft.CompactFramework.Common.targets 的副本拷贝至 C:\Windows\Microsoft.NET\Framework\v2.0.50727
编译步骤如下:

1、安装DevExpress控件包,最好选择完全安装,避免出错。

2、运行DevExpressRegSetup_v11.1.8.exe进行注册

3、将源代码(DX2011.1.8_src.7z)解压缩至 C:\Program Files (x86)\DevExpress2011.1\Components\Sources,如果遇到重复的直接覆盖。

4、将编译脚本(Sources.zip)解压至 C:\Program Files (x86)\DevExpress2011.1\Components\Sources。

4、将 安装目录下的Sources 目录下的所有文件属性改为可写,默认是只读。

5、执行 Sources 目录下的 Clear.bat,该脚本将清空所有 GAC 中的 DevExpress 注册信息和清空原有的程序集。

6、将上述第9点所需的DLL副本拷贝至 Sources\DevExpress.DLL 下。

7、使用编译命令:buildall.cmd /silent》build.txt,将使用静默编译,编译过程中的内容输出至 build.txt 文件中。

8、编译完成后,使用命令注册工具箱:ToolboxCreator.exe /INI:toolboxcreator.ini/LOG:gucs.log,卸载工具箱的命令是:ToolboxCreator.exe /INI:toolboxcreator.ini

/Remove。

如何评价DevExpress


DevExpress控件是利用模版来呈现控件外观的。
要呈现一个绝佳的外观,需要使用带有嵌套边框和渐变画笔的复杂模版。
这样一来,不能通过简单的风格设置来改变控件的颜色,因为控件的颜色改变取决于不同画笔产生的视觉效果。
本文主要想客户展示如何修改主题的模版。
要修改控件的外观,需要找到必要元素的模版,将模版嵌入到应用程序资源中,准确的修改模版并且不可破坏模版的内部结构。
一旦修改了模版的结构,便会破坏一些功能。
另外,还值得一提的是,相同的模版会因为主题的不同而不同。
要实现一个特定主题的自定义模版(不是默认深蓝主题),需要在模版KEY中指定ThemeName属性。

葡萄城控件 和 devexpress 什么关系


葡萄城控件包含ComponentOne控件套包、Spread产品线、ActiveReports报表控件、Wijmo前端控件集、LeadTools图像处理开发工具包等控件产品 和 活字格企业Web应用生成器、葡萄城报表等企业软件产品。devexpress只是一套.NET界面控件。两个完全是不同的概念。

devexpress 12.1.8 怎么破解


编译需要准备的内容如下:

1、DXperience-11.1.8.exe 官方安装包

2、DX2011.1.8_src.7z 源代码

3、devexpress 11.1 编译脚本(Sources.zip)

4、安装 NNuit 安装包(NUnit-2.6.0.11324.msi)

5、Silverlight 3 Toolkit November 2009.msi

6、devexpressRegSetup_v11.1.8.exe 注册工具

7、附带一个国际化语言包 Language.zip
安装前需要的开发工具:VS2008、VS2010 SP1版

8、安装 Silverlight Toolkit,在安装目录下找到 microsoft.Silverlight.Testing.dll和 microsoft.VisualStudio.QualityTools.UnitTesting.Silverlight.dll,将其部署到

gac中,并将副本拷贝至 C:\Program Files (x86)\Reference Assemblies\microsoft\Framework\Silverlight\v4.0\下
9、所需的dll(devexpress.dll.zip):ActiveReports.Viewer3.dll、ActiveReports3.dll、System.Data.SQLite.dll、Moq.dll
10、我的编译环境是:Windows 7 X32,VS2010 SP1,需要特别声明,必须安装VS2008,否则,将找不到编译所需的 microsoft.CompactFramework.CSharp.targets 和microsoft.CompactFramework.Common.targets
11、将目录 C:\Windows\microsoft.NET\Framework\v3.5\ 下的microsoft.CompactFramework.CSharp.targets 和microsoft.CompactFramework.Common.targets 的副本拷贝至 C:\Windows\microsoft.NET\Framework\v2.0.50727
编译步骤如下:

1、安装devexpress控件包,最好选择完全安装,避免出错。

2、运行devexpressRegSetup_v11.1.8.exe进行注册

3、将源代码(DX2011.1.8_src.7z)解压缩至 C:\Program Files (x86)\devexpress2011.1\Components\Sources,如果遇到重复的直接覆盖。

4、将编译脚本(Sources.zip)解压至 C:\Program Files (x86)\devexpress2011.1\Components\Sources。

4、将 安装目录下的Sources 目录下的所有文件属性改为可写,默认是只读。

5、执行 Sources 目录下的 Clear.bat,该脚本将清空所有 gac 中的 devexpress 注册信息和清空原有的程序集。

6、将上述第9点所需的DLL副本拷贝至 Sources\DevExpress.DLL 下。

7、使用编译命令:buildall.cmd /silent》build.txt,将使用静默编译,编译过程中的内容输出至 build.txt 文件中。

8、编译完成后,使用命令注册工具箱:ToolboxCreator.exe /ini:toolboxcreator.ini/log:gucs.log,卸载工具箱的命令是:ToolboxCreator.exe /ini:toolboxcreator.ini

/Remove。

devexpress为什么要重新编译源码


本文以DevExpress 11.1.8举例 必须满足几个条件
1、 必须有DXperience相应版本的全部源代码SourceCode。把全部源代码复制到X:\Program Files\DevExpress XXX\Components\Sources目录。目标目录的默认位置是在C:\Program Files\DevExpress 20XX\Components\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目录。当然如果是约定的某人生成的文件则直接将文件复制到/ Devexpress.Key /即可。PS。该文件拥有一个对应的PublicKeyToken之后也要使用。
3、 解压编译脚本。将下载的相应版本的编译脚本压缩包解压,然后将所有文件复制到DXperience安装目录的Sources子目录下。
下面开始处理
===============================================================================================
如果之前已安装过其它版本的DevExpress要执行清除程序集的步骤,如果是初次安装可以跳过这一步
运行C:\Program Files\DevExpress 2011.1\Components\Sources\clear.bat
注:执行该步骤时如果出现“程序集锁定”的提示请关闭正在运行的程序,重启IIS Admin 服务,然后在执行一次clear.bat
===============================================================================================
执行C:\Program Files\DevExpress 2011.1\Components\Sources\buildall.cmd
等待执行完毕,执行完毕后会生成两个文件
C:\Program Files\DevExpress 2011.1\Components\Sources\PublicKeyToken.txt -- 公钥文件
C:\Program Files\DevExpress 2011.1\Components\Sources\DevExpress.Key\StrongKey.snk -- 私钥文件
===============================================================================================
打开PublicKeyToken.txt,复制那一串字符如:aea63221faec5671 共16位
在命令行运行如下命令替换公钥
“%ProgramFiles%\DevExpress 2011.1\Components\Tools\DXperience\ProjectConverter-console.exe“ /r /k:《换成你的公钥》 “《源码解压的目录》“
在这里我的是这样
“%ProgramFiles%\DevExpress 2011.1\Components\Tools\DXperience\ProjectConverter-console.exe“ /r /k:233e5082d2bfa4a0 “%ProgramFiles%\DevExpress 2011.1\Components\Sources“
至此控件部分已经从新编译完毕。但是Demo却不能运行了,若要查看Demo就使用公钥对Demo重新编译一次就可以了
编译完源文件后要
开始 → 程序 → Developer Express v2011 vol 1 → Components → Tools → ToolboxCreator
重建下IDE的工具栏
更新以前项目的公钥
经过重新编译后的DevExpess控件私钥和公钥都已经改变,如果在编译前使用过DevExpess的控件,在编译后将无法继续使用
我们可以通过DevExpress的升级工具对项目进行升级,步骤如下:
开始 -》 程序 -》 Developer Express v2011 vol 1 -》 Components -》 Tools -》 ProjectConverter

打开 Project Convert (11.1.6.0) 后可以按单个项目(Project folder)升级或多个项目同时升级(Folder list)
勾选 show advanced option(显示高级选项) 后在 Custom public key token 栏输入
C:\Program Files\DevExpress 2011.1\Components\Sources\PublicKeyToken.txt 文件中的公钥值 如:233e5082d2bfa4a0
Hint path behavior 选择 Upldate ,然后点击右下角的 Upgrade 按钮,等待程序替换公钥完毕后就可以了

展开全文阅读

相关内容