利用WinForm 更好的实现Web安装程序的更多功能
2007-03-15 10:09
465 查看
本文转自:
http://blog.joycode.com/moslem/archive/2004/12/29/41985.aspx
原标题为:ASP.NET开发经验(5) --- 制作功能完善的安装程序
非常感谢 原作者
原文大概如下:
==============================
象 ASP、ASP.NET 等诸多基于 Web 的应用程序的安装与部署一直是个麻烦事情,
一般都是手工复制、手工修改相关配置文件(主要是数据库配置),
和 Windows 上 Installer 或 Linux 上的 RPM 相比,这种方式显然一点技术含量都没有。
对于胖客户端应用,从很早开始就一直都有较为完善的安装程序制作工具了,
如 InstallShield、InstallAnywhere、Wise Installer、SWIFT Installer 等等,
其中一部分已经实现了跨平台,可以运行在 Windows、Linxu、Java 等平台上。
从 Visual Studio 6.0 开始,Microsoft 提供了单独的 Setup Tools ,
可以用来制作简易的安装程序,后来,这个工具被集成到 VS.NET 2002/2003 中,
并且功能做了一些增强,可以制作自定义的对话框等。
其优点是能很好的和 VS.NET 的项目进行集成,
这样在整个解决方案(Solution)在 Build 的时候,就可以生成安装包,
这样便于实现每日构建(Daily Build),
同时其缺点仍然存在,
不能对安装过程进行更多地控制,提供的对话框功能和类型有限,
很少看到有人利用这些对话框实现对系统的一些较为复杂的配置,
如绝大多数应用程序中都会涉及的数据库创建、初始数据的生成等工作。
有很多不错的安装工具中,在安装的过程中就可以对实现对系统进行一些配置,
但安装结束后,如果配置发生改变,例如数据库迁移等,又变成一件令人头疼的事情,
如果对系统了解较多,知道配置数据的存放位置,就可以手动修改,
如果不了解怎么办?难道要先卸载,再重新安装来完成新配置?
在很多不错的胖客户应用中,配置界面是和安装界面独立的,
这样便于在安装系统后,灵活地调整其配置,
那么就把它拿到 ASP.NET 的安装程序中吧。
1) 建立解决方案 Solution
2) 建立 Web 应用
3) 新增一个 WinForms 应用 AppConfig,增加一个 WinForm ,
完成初始化系统环境,修改系统配置的功能
(如生成数据库、生成初始数据、修改 Web.Config 中的数据库连接参数,
achine.Config 或自定义配置文件)等功能,生成 AppConfig.exe
4) 新增一安装项目 Setup,除了将 Web 应用的的“主输出”和“内容输出”加入到项目中,
还要将 AppConfig 的“主输出”加入到此项目中
5) 在 Setup 项目中的“自定义操作中”的“安装”节,增加一自定义操作,
使其运行来自于 AppConfig 的“主输出” AppConfig.exe
这样 ASP.NET 的安装程序在运行的最后阶段,
会运行 AppConfig 的 WinForm 程序,来完成相关的配置,如数据库等。
如果以后配置发生改变,可以直接运行 AppConfig.exe 来更改配置。
=-============
附:
同时 也非常感谢 宝玉 提供的源码示例程序
大家也可以参考参考asp.net forums的安装程序,非常不错!
安装程序源码下载:http://bbs.openlab.net.cn/ShowThread.aspx?PostID=365490
http://blog.joycode.com/moslem/archive/2004/12/29/41985.aspx
原标题为:ASP.NET开发经验(5) --- 制作功能完善的安装程序
非常感谢 原作者
原文大概如下:
==============================
象 ASP、ASP.NET 等诸多基于 Web 的应用程序的安装与部署一直是个麻烦事情,
一般都是手工复制、手工修改相关配置文件(主要是数据库配置),
和 Windows 上 Installer 或 Linux 上的 RPM 相比,这种方式显然一点技术含量都没有。
对于胖客户端应用,从很早开始就一直都有较为完善的安装程序制作工具了,
如 InstallShield、InstallAnywhere、Wise Installer、SWIFT Installer 等等,
其中一部分已经实现了跨平台,可以运行在 Windows、Linxu、Java 等平台上。
从 Visual Studio 6.0 开始,Microsoft 提供了单独的 Setup Tools ,
可以用来制作简易的安装程序,后来,这个工具被集成到 VS.NET 2002/2003 中,
并且功能做了一些增强,可以制作自定义的对话框等。
其优点是能很好的和 VS.NET 的项目进行集成,
这样在整个解决方案(Solution)在 Build 的时候,就可以生成安装包,
这样便于实现每日构建(Daily Build),
同时其缺点仍然存在,
不能对安装过程进行更多地控制,提供的对话框功能和类型有限,
很少看到有人利用这些对话框实现对系统的一些较为复杂的配置,
如绝大多数应用程序中都会涉及的数据库创建、初始数据的生成等工作。
有很多不错的安装工具中,在安装的过程中就可以对实现对系统进行一些配置,
但安装结束后,如果配置发生改变,例如数据库迁移等,又变成一件令人头疼的事情,
如果对系统了解较多,知道配置数据的存放位置,就可以手动修改,
如果不了解怎么办?难道要先卸载,再重新安装来完成新配置?
在很多不错的胖客户应用中,配置界面是和安装界面独立的,
这样便于在安装系统后,灵活地调整其配置,
那么就把它拿到 ASP.NET 的安装程序中吧。
1) 建立解决方案 Solution
2) 建立 Web 应用
3) 新增一个 WinForms 应用 AppConfig,增加一个 WinForm ,
完成初始化系统环境,修改系统配置的功能
(如生成数据库、生成初始数据、修改 Web.Config 中的数据库连接参数,
achine.Config 或自定义配置文件)等功能,生成 AppConfig.exe
4) 新增一安装项目 Setup,除了将 Web 应用的的“主输出”和“内容输出”加入到项目中,
还要将 AppConfig 的“主输出”加入到此项目中
5) 在 Setup 项目中的“自定义操作中”的“安装”节,增加一自定义操作,
使其运行来自于 AppConfig 的“主输出” AppConfig.exe
这样 ASP.NET 的安装程序在运行的最后阶段,
会运行 AppConfig 的 WinForm 程序,来完成相关的配置,如数据库等。
如果以后配置发生改变,可以直接运行 AppConfig.exe 来更改配置。
=-============
附:
同时 也非常感谢 宝玉 提供的源码示例程序
大家也可以参考参考asp.net forums的安装程序,非常不错!
安装程序源码下载:http://bbs.openlab.net.cn/ShowThread.aspx?PostID=365490
相关文章推荐
- 利用WinForm 更好的实现Web安装程序的更多功能
- 利用PHP安装windows自动运行的服务,PHP程序可以实现长时间、自动运行、定时更新功能,直接可以用在项目中的类源代码
- 利用SqlHelper.cs实现Web程序对数据库的增、删、改等操作
- centos中安装tomcat7,并实现web程序的热部署
- [转]利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆
- vs2005安装程序的制作、.Net框架、数据库打包、卸载功能实现
- 利用CMHTMLView实现webview基础功能,同时获取点击图片链接的功能
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息。
- vc 利用无名管道 控制台程序实现cmd功能
- 让Android程序获得系统权限,实现关机重启,静默安装等功能
- VS2005 Web项目安装部署:利用预编译的Dll 隐藏.cs文件 的简单实现
- VC2010 MFC中实现printf调试功能,即MFC程序利用控制台输出调试信息
- 发布 web虎(2011-Windows加密狗版)-软件加密保护模块i111208版-修订1!增加支持功能:静默安装过程中,利用setup.ini预置安装参数,不需手工输 新建answer file做
- 一个获取rgb的小程序,有兴趣的可以交流交流,好多地方还不够完美,不过功能可以实现(C# winForm)
- 利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆(修改)
- 小程序 实现上拉加载更多 和下拉刷新的功能
- 利用HttpModuler实现WEB程序同一时间只让一个用户实例登陆
- Nginx的安装实现web功能