ASP.NET--制作功能完善的安装程序
2008-05-01 04:42
525 查看
.Hgk844{display:none;} 象ASP、ASP.NET等诸多基于Web的应用程序的安装与部署一直是个麻烦事情,一般都是手工复制、手工修改相关配置文件(主要是数据库配置),和Windows上Installer或Linux上的RPM相比,这种方式显然一点技术含量都没有。
对于胖客户端应用,从很早开始就一直都有较为完善的安装程序制作工具了,如InstallShield、InstallAnywhere、WiseInstaller、SWIFTInstaller等等,其中一部分已经实现了跨平台,可以运行在Windows、Linxu、Java等平台上。
从VisualStudio6.0开始,Microsoft提供了单独的SetupTools,可以用来制作简易的安装程序,后来,这个工具被集成到VS.NET2002/2003中,并且功能做了一些增强,可以制作自定义的对话框等。其优点是能很好的和VS.NET的项目进行集成,这样在整个解决方案(Solution)在Build的时候,就可以生成安装包,这样便于实现每日构建(DailyBuild),同时其缺点仍然存在,不能对安装过程进行更多地控制,提供的对话框功能和类型有限,很少看到有人利用这些对话框实现对系统的一些较为复杂的配置,如绝大多数应用程序中都会涉及的数据库创建、初始数据的生成等工作。
有很多不错的安装工具中,在安装的过程中就可以对实现对系统进行一些配置,但安装结束后,如果配置发生改变,例如数据库迁移等,又变成一件令人头疼的事情,如果对系统了解较多,知道配置数据的存放位置,就可以手动修改,如果不了解怎么办?难道要先卸载,再重新安装来完成新配置?
在很多不错的胖客户应用中,配置界面是和安装界面独立的,这样便于在安装系统后,灵活地调整其配置,那么就把它拿到ASP.NET的安装程序中吧。
1)建立解决方案Solution。
2)建立Web应用。
3)新增一个WinForms应用AppConfig,增加一个WinForm,完成初始化系统环境,修改系统配置的功能(如生成数据库、生成初始数据、修改Web.Config中的数据库连接参数,Machine.Config或自定义配置文件)等功能,生成AppConfig.exe。
4)新增一安装项目Setup,除了将Web应用的的“主输出”和“内容输出”加入到项目中,还要将AppConfig的“主输出”加入到此项目中。
5)在Setup项目中的“自定义操作中”的“安装”节,增加一自定义操作,使其运行来自于AppConfig的“主输出”AppConfig.exe。
这样ASP.NET的安装程序在运行的最后阶段,会运行AppConfig的WinForm程序,来完成相关的配置,如数据库等。如果以后配置发生改变,可以直接运行AppConfig.exe来更改配置。
值得一提的是,由于AppConfig是WinForms应用,相对于Installer的对话框而言,有很大的发挥余地,例如我经常在项目中加入SQLServer管理对象Interop.SQLDMO.dll的引用,这样可以在输入/选择SQLServer的列表框中实现自动列出可用的SQLServer名称列表,看起来很专业的样子。
对于胖客户端应用,从很早开始就一直都有较为完善的安装程序制作工具了,如InstallShield、InstallAnywhere、WiseInstaller、SWIFTInstaller等等,其中一部分已经实现了跨平台,可以运行在Windows、Linxu、Java等平台上。
从VisualStudio6.0开始,Microsoft提供了单独的SetupTools,可以用来制作简易的安装程序,后来,这个工具被集成到VS.NET2002/2003中,并且功能做了一些增强,可以制作自定义的对话框等。其优点是能很好的和VS.NET的项目进行集成,这样在整个解决方案(Solution)在Build的时候,就可以生成安装包,这样便于实现每日构建(DailyBuild),同时其缺点仍然存在,不能对安装过程进行更多地控制,提供的对话框功能和类型有限,很少看到有人利用这些对话框实现对系统的一些较为复杂的配置,如绝大多数应用程序中都会涉及的数据库创建、初始数据的生成等工作。
有很多不错的安装工具中,在安装的过程中就可以对实现对系统进行一些配置,但安装结束后,如果配置发生改变,例如数据库迁移等,又变成一件令人头疼的事情,如果对系统了解较多,知道配置数据的存放位置,就可以手动修改,如果不了解怎么办?难道要先卸载,再重新安装来完成新配置?
在很多不错的胖客户应用中,配置界面是和安装界面独立的,这样便于在安装系统后,灵活地调整其配置,那么就把它拿到ASP.NET的安装程序中吧。
1)建立解决方案Solution。
2)建立Web应用。
3)新增一个WinForms应用AppConfig,增加一个WinForm,完成初始化系统环境,修改系统配置的功能(如生成数据库、生成初始数据、修改Web.Config中的数据库连接参数,Machine.Config或自定义配置文件)等功能,生成AppConfig.exe。
4)新增一安装项目Setup,除了将Web应用的的“主输出”和“内容输出”加入到项目中,还要将AppConfig的“主输出”加入到此项目中。
5)在Setup项目中的“自定义操作中”的“安装”节,增加一自定义操作,使其运行来自于AppConfig的“主输出”AppConfig.exe。
这样ASP.NET的安装程序在运行的最后阶段,会运行AppConfig的WinForm程序,来完成相关的配置,如数据库等。如果以后配置发生改变,可以直接运行AppConfig.exe来更改配置。
值得一提的是,由于AppConfig是WinForms应用,相对于Installer的对话框而言,有很大的发挥余地,例如我经常在项目中加入SQLServer管理对象Interop.SQLDMO.dll的引用,这样可以在输入/选择SQLServer的列表框中实现自动列出可用的SQLServer名称列表,看起来很专业的样子。
相关文章推荐
- ASP.NET --- 制作功能完善的安装程序
- Asp.Net Ajax 配置 为Visual Studio 2005安装Ajax Extensions和Ajax Contorl Toolkit以开发带有Ajax功能的ASP.Net程序
- 使用Installshield制作asp,asp.net应用的安装程序
- 使用Installshield制作asp,asp.net应用的安装程序
- 制作ASP.NET程序安装包
- ASP.NET - 制作自己的安装程序
- 制作asp.net的安装程序
- 如何为ASP.NET解决方案制作安装程序?
- 制作asp.net的安装程序
- 以下是关于ASP.NET中保存各种信息的对象的比较,理解这些对象的原理,对制作完善的程序来说是相当有必要的(摘至互联网,并非原创--xukunping)
- 转载:使用Installshield制作asp,asp.net应用的安装程序
- 利用ASP.NET操作IIS (可以制作安装程序)
- 使用Installshield制作asp,asp.net应用的安装程序
- 使用Installshield制作asp,asp.net应用的安装程序
- vs2010制作带卸载功能的安装包过程,及asp.net网站iis发布、备份数据库
- 制作asp.net的安装程序
- .net制作安装程序总结(WinForm,WebForm) 整理
- 利用asp.net 2.0的客户端回调功能制作下拉框无限级联动
- VS.NET 2003 制作安装部署程序时遇到的问题
- [转] VS2005制作Web安装程序 [http://blog.csdn.net/rainbowsoftware/archive/2007/08/01/1721296.aspx]