分享
 
 
 

用VS.NET2003制作WEB应用程序的安装包 (收藏)

王朝c#·作者佚名  2006-01-09
窄屏简体版  字體: |||超大  

利用vs.net2003来制作一个安装程序是非常的方便的,既使是制作一个web应用程序的安装程序也是如此。仅仅简单的几个步骤就可以完成。

首先,创建一个安装和部署项目。步骤如下:

1.在"解决方案资源管理器"中的解决方案中添加一个新项目。

用鼠标右键单击解决方案,在弹出的菜单中选择"添加"->"新建项目"。在打开的对话框中选择"安装和部署项目",并选择"Web安装项目"模板。在输入项目名称后,点击"确定"按钮,将新项目添加到解决方案中。

2.将项目的输出添加到安装和部署项目中。

添加完安装和部署项目后,vs.net2003 IDE会自动打开一个名为"文件系统"的管理器。用鼠标右键单击此管理器右边树型结构中的"Web应用程序文件夹",在弹出的菜单中选择"添加"->"项目输出"。在弹出的对话框中,选择"项目"(这时只有一个,就是你的web应用程序项目),然后在下面的列表中选择"主输出"和"内容文件"两项(可以复选),接着在"配置"中选择"Release .NET",点击"确定"按钮。

经过上面两个步骤,一个基本的安装和部署程序就制作完成了,将此项目编译后就得到了一个Web安装程序包。

然而,在很多的情况下,我们做的Web应用程序都要使用到数据库,能不能在安装程序的同时也将数据库一起安装呢?答案是肯定的。那该怎么做呢?这个问题李洪根先生已经解决了,具体内容可以参看下面的文章

http://blog.csdn.net/lihonggen0/archive/2004/05/17/13654.aspx

在李洪根先生的这篇文章中详尽的介绍了安装程序的制作和如何同时安装数据库。在此大致叙述如下:

1.新建一个类库项目,删除自动生成的Class.cs,重新添加一个新项。鼠标右键此项目,在弹出的菜单中选择"添加"->"添加新项",在弹出的对话框中选择"安装程序类"。

2.创建一个自定义的安装对话框。鼠标右键点击"解决方案资源管理器"中的安装和部署项目,在弹出的菜单中选择"视图"->"用户界面"。在打开的"用户界面"管理器中,鼠标右键点击"启动",在弹出的菜单中选择"添加对话框"。在打开的对话框中选择"文本框(A)"。选择"文本框(A)",在属性中,依次设置含Property属性为CUSTOMTEXT1,CUSTOMTEXT2,CUSTOMTEXT3,CUSTOMTEXT4。

3.创建自定义操作。鼠标右键点击"解决方案资源管理器"中的安装和部署项目,在弹出的菜单中选择"视图"->"自定义操作"。在打开的"自定义操作"管理器中,鼠标右键点击"安装",在弹出的菜单中选择"添加自定义操作"。在打开的对话框中,在"查找范围"中选择"Web应用程序文件夹",选择下面列表中的"主输出来自Install1(活动)"(Install1是"安装程序类"所在的项目名。如果列表中没有,可以用上面提到的"将项目的输出添加到安装和部署项目中"的方法添加)。然后在"自定义操作"管理器中选择刚添加的内容,在属性窗口中设置CustomActionData属性/dbname=[CUSTOMTEXT1] /server=[CUSTOMTEXT2] /user=[CUSTOMTEXT3] /pwd==[CUSTOMTEXT4] /targetdir="[TARGETDIR]\"

注意:每个设置内容以/分隔,且以空格分开。

4.在此类中重写Install方法,并添加下面的代码

string strConn=String.Format("data source={0};user id={1};password={2};",this.Context.Parameters["server"],this.Context.Parameters["user"],this.Context.Parameters["pwd"]);

this.ExecuteSQL(strConn,"master","CREATE DATABASE "+this.Context.Parameters["dbname"]);

System.Diagnostics.Process pSQL=new System.Diagnostics.Process();

pSQL.StartInfo.FileName="osql.exe";

pSQL.StartInfo.Arguments=String.Format(" -U {0} -P {1} -d{2} -i {3}db.sql",this.Context.Parameters["user"],this.Context.Parameters["pwd"], this.Context.Parameters["dbname"],this.Context.Parameters["targetdir"]);

pSQL.StartInfo.WindowStyle=System.Diagnostics.ProcessWindowStyle.Hidden;

pSQL.Start();

pSQL.WaitForExit();

pSQL.Close();

这样,编译后的安装程序就可以连数据库一起安装了。

安装数据库的问题解决了,还有一个问题,那就是要使ASP.NET程序运行,一个重要的条件就是目标计算机上必须有.NET框架,那能不能在安装程序时也一同将.NET框架一块安装了呢?答案还是肯定的。具体可以参看

http://www.microsoft.com/china/MSDN/library/netFramework/netframework/Nfdnnetdepvsredistdeploy1_1.mspx

在这篇文章中提到了几种不同的方法重新分发.NET框架,其中最简单的一种应该算是使用VS.NET2003了。大致的步骤如下:

1.安装VS.NET框架引导程序插件。这个插件可以从微软的网站上下载,下载地址如下:

http://www.microsoft.com/downloads/details.aspx?familyid=627921a0-d9e7-43d6-a293-72f9c370bd19&displaylang=en

2.在"解决方案资源管理器"中,用鼠标右键单击安装和部署项目,在弹出的菜单中选择"视图"->"启动条件",打开"启动条件"管理器。

3.在"启动条件"管理器中,右键点击"目标计算机上的要求",在弹出的的菜单中选择"添加注册表启动条件"。你会发现在"搜索目标计算机"中多了一项"搜索 RegistryEntry1",在"启动条件"中多了一项"Condition1"。

4.选择"搜索 RegistryEntry1",在"属性"对话框中填写如下内容:

Property:MDACSEARCH

RegKey:Software\Microsoft\DataAccess

Root:vsdrrHKLM

Value:FullInstallVer

选择"Condition1" ,在"属性"对话框中填写如下内容:

Condition:MDACSEARCH>="2.6"

进行这一步是因为在安装.NET框架的时候需要MDAC。

OK,现在编译安装和部署项目,就得到了一个可以同时安装.NET框架的安装程序。

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有