当前位置:首页 > 计算机相关 > .net专区 > 正文内容

图解vs2008打包全过程,含卸载功能

piikee14年前 (2009-05-29).net专区163
1:新建安装部署项目
打开VS编辑器,点击新建项目,选择:其他项目类型--安装与部署--安装向导(安装项目也一样),然后点击确定.(详细见下图)
本文虽以VS2005打包为例,但是在VS2008下一样也可以用此法,本人已经在VS2008下测试通过。
110
2:安装向导
关闭后打开安装向导,点击下一步,或者直接点击完成.
3:开始制作
安装向导完成后即可进入项目文件夹:
双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件和相应的类库和组件添加进来.
111
然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切或复制到左边的"用户的'程序'菜单"和"用户桌面"中.
这样安装程序安装安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式.
112
然后右击左边的"应用程序文件夹"打开属性对话框:
将属性中的"defaultlocation"的路径中的"[manufacturer]"去掉,
不然的话做好的安装程序默认安装目录会是"c:\programm file\你的用户名\安装解决方案名称";
然后打开解决方案管理器,右击你的解决方案名称,选择属性:
在打开的属性页中,选择"系统必备",
113
在打开的系统必备页中,选中如下中的选择项,这个很重要!!!!!1!!!!!
选上以后,在生成的安装文件包中包含.netframework组件.(这个选项默认是没有选中的)
114
上面这里具体看你的程序了。.net3.5默认选中。不需要修改了。
好了,这样就完成99%了,然后点击"生成->生成解决方案",哈,生成成功!
4:制作完成
现在打开解决方案文件夹下的debug文件夹,就可以看到生成的安装文件了.
【续】关于"卸载"功能的添加
上面的文章只介绍了简单的生成安装的方法,
但是在vs.net2005下并没有直接生成卸载程序的功能,
所以我们只好用msi来实现了,
原理我就不讲了,网上一搜一堆,我只讲操作,
【1】:在添加你的应用程序项目的时候,多添加一个msiexec.exe进去,
这个文件在c:\windows\system32文件夹下,
115
添加进去以后,为了让他更像个卸载程序,把他的名字改成"Uninstall.exe",
当然这个关系不大,改不改都行的.
然后给他创建一个快捷方式,放到桌面或者"开始-程序"中,
我选择放在了开始菜单中,然后下面我们要的做的就是查找这个部署项目的ProductCode了,
鼠标左键单击项目名称,记住是左键单击,然后点击属性标签,注意:不是右击的属性,
这个区别很大,这时你就可以看到ProductCode了,
116
然后打开你创建的那个快捷方式的属性对话框,
在Aguements属性中输入"/x {ProductCode}",
117
118
好了,然后点击"生成解决方案"即可生成带有卸载功能的安装程序了.

扫描二维码推送至手机访问。

版权声明:本文由萍客小居发布,如需转载请注明出处。

本文链接:https://www.piikee.net/319.html

分享给朋友:

相关文章

C#泛型的好处

关于object类型:1.object类型可以来引用任何类型的实例;2.object类型可以存储任何类型的值;3.可以定义object类型的参数;4.可以把object作为返回类型。但是--这样做有很大的问题1.会因为程序员没有记住使用的类...

AjaxControlToolKit中 CalendarExtender(日历扩展控件)变为中文界面

ScriptManager控件的EnableScriptGlobalization属性 和EnableScriptLocalization属性设置为 true则  CalendarExtender 控件为中文...

asp.net实现动态显示当前时间

asp.net实现动态显示时间的两个方法方法一:不用javascrip,而是用了AJAX。(开销比较大,每秒向服务器请求一次时间)Default.aspx页面:先拉一个ScriptManager控件到页面,然后拉一个UpdatePanel控...

SQL2005服务无法启动,错误代码3417的终极解决办法

sql2005,在服务管理里面启动sql的服务报出错误代码3417的错误。错误框提示为:“Windows不能在 本地计算机 启动 SQL Server(MSSQLSERVER)。有关更多信息,查阅系统事件日志。如果这是非Microsoft...

div中英文无法自动换行的解决办法

问题:在一个设定好宽度的div中,当我们输入的中文文字长度超过了设定宽度时,会自动换到下一行。但是,如果输入的是英文字母,那么,无论你div设定宽度为多少,英文字母都是不换行直接在同一行输出,导致div的宽度远远超出设定的大小。原因:这是因...

C#重写WndProc 方法实现无法关闭的窗体

在窗体的设计文件Form1.Designer.cs中重写WndProc 方法 ,实现拦截窗体特定消息。代码如下:protected override void WndProc(ref System.Windows.Forms.Message...

发表评论

访客

◎欢迎参与讨论,请在这里发表您的看法和观点。