VS2008 Windows Form项目安装包生成详解
2008 Windows Form项目的发布对有经验的程序员来说,可能不值一提,但对很多新手来说却不知道如何操作,因为在很多关于Visual Studio的书籍中也没有相关介绍,权威如《C# 2005/8 高级编程》对该内容也末涉及。好在网络上不乏热心网友对相关操作经验进行分享,只是在表述上并不详尽,笔者觉得有必要对该操作方法详细说明一番,希望能对 有些新手朋友起到一些帮助。有时学习的乐趣不在于我们掌握了何种技术、何种技巧,善于总结、学会分享也是一种不错的体验,在我们遇到问题茫然无助时,都是 多么希望能有过来人给我们指引,希望我们也能成为别人学习历程中的一个指路人。
下面就让我来说一说,如何将我们已经测试好的项目,打包发布成一个商品化软件,可双击安装的应用程序。
一、新建一个安装项目
操作步骤:文件->新建->项目,在“新建项目”对话框左边“项目类型”中选择“其它项目类型”下面的“安装和部署”,在对话框右边的“模板”窗口中选择“安装项目”。
图示如下:
给该安装项目取一个名称,如:mySetup ,并选择一下项目存储位置,如:E:\,然后单击“确定”,确定后会进入安装项目工作界面。如下图所示:
二、 在“应用程序文件夹”下添加两个文件夹,一个叫image用来存储程序的ICO图标,另一个叫program用来存储自己开发项目的Debug下面编译好 的所有文件。选中“program”,点右键添加文件,通过浏览对话框找到自己开发程序的Bin\Debug目录下的文件,将它们都添加进来。
添加后的界面如下:
三、向“用户的‘程序’”菜单中添加内容,可先添加一个文件夹,比如取名“教材管理系统”,再将program中的你的程序的可执行文件***.exe选中点右键,选择“创建***.exe”快捷方式,如下图:
给创建好的快捷方式重新命名,如“教材管理系统Ver1.0 ”,然后将其剪切到“用户的‘程序’菜单”,重复上述操作,在“用户桌面”下添加同样的快捷方式。这样在安装之后,在开始菜单“程序”与用户的桌面上就会有相应程序的菜单项及图标了。
四、给“用户的‘程序’菜单”中添加卸载该软件命令项,首先,要在program文件夹下添加Windows自带的卸载程序文件“msiexec.exe”,其路径为“C:\WINDOWS\system32”,然后将其重新命名,改成“uninstall.exe”,如下图所示:
给其创建一个快捷方式,给快捷方式重新命名,如“卸载教材管理系统”,再将其剪切到用户的“程序”菜单下面的“教材管理系统”文件夹中,如下图所示:
接着要设定该卸载快捷方式的Arguments属性,如下图所示:
命令行参数要填上要卸载程序的产品代码,代码在项目mySetup属性下的ProductCode对应的值,将其复制一下,如下图:
然后copy到卸载快捷方式的Arguments参数值上,并在前面加上“/x ”,如下图所示:
五、给应用程序添加图标 将自己喜欢的图标小文件添加到Image文件夹下,然后选中用户的“程序”菜单下面的快捷方式,在属性窗口中的 Icon中为其快捷方式添加图标。
六、添加相关的系统必备项,确保在安装时不缺少相关的文件 选中mySetup项目,点右键属性,在出现的属性页对话框中有“系统必备”按钮,如下图所示:
在出现的对话框中选择相关的必备项,如下图所示:
七、生成项目
生成成功后,在项目的Bin\Debug目录下就会找到生成好的两个安装文件,如下图所示:
双击setup就可以安装了,安装好后,在开始菜单中就会找到相应的菜单命令,如下图所示:
同样,在用户的桌面上也会有一个可执行的快捷方式图标。
到此,一个完整的vs2008程序的发布打包过程就讲解完了。
VS2008 Windows Form项目安装包生成详解的更多相关文章
- VISUAL STUDIO 2008 WINDOWS FORM项目发布生成安装包详解(转)
转自:http://www.cnblogs.com/killerofyang/archive/2012/05/31/2529193.html Visual Studio 2008 Windows Fo ...
- electron热更新与windows下的安装包
帮朋友公司做了点东西,他说有很多bug,我一看,基本问题都是浏览器兼容引起的,而electron内带Chromium内核,正好一直想尝试下electron,所以研究了一波.这里只是简单的使用elect ...
- windows上pip安装及使用详解
windows上pip安装及使用详解 2018-11-21 19:49:58 十二笔 阅读数 8229更多 分类专栏: Python学习 版权声明:本文为博主原创文章,遵循CC 4.0 BY-SA ...
- DELL R720服务器安装Windows Server 2008 R2 操作系统图文详解
DELL R720服务器安装Windows Server 2008 R2 操作系统图文详解 说明:此文章中部分图片为网络搜集,所以不一定为DELL R720服务器安装界面,但可保证界面内容接近DELL ...
- 项目log4j日志管理详解
项目log4j日志管理详解 log4j日志系统在项目中重要性在这里就不再累述,我们在平时使用时如果没有特定要求,只需在log4j.properties文件中顶入输出级别就行了.如果要自定义输出文件,对 ...
- Windows系统Git安装教程(详解Git安装过程)
Windows系统Git安装教程(详解Git安装过程) 今天更换电脑系统,需要重新安装Git,正好做个记录,希望对第一次使用的博友能有所帮助! 获取Git安装程序 到Git官网下载,网站地址: ...
- p2p网贷项目开发全过程技术详解,应用框架是ci2.2
p2p网贷项目开发全过程技术详解,应用框架是ci2.2 很标准的mvc开发代码,代码也很简单,方便二次开发 这篇文章会不断更新
- Android项目刮刮奖详解(二)
Android项目刮刮奖详解(一) 前言 上期我们简单地实现了一个画板的功能,用户可以在上面乱写乱画,其实,刮刮奖也是如此,用户刮奖的时候也是乱写乱画的. 刮刮奖原理 一共有两层画布,底层画布存放中奖 ...
- Android项目刮刮奖详解(三)
Android项目刮刮奖详解(二) 前言 上一期我们已经实现了一个简易的刮刮卡功能,这一期我们来将其完善一下 目标 将刮刮奖的宽高改为合适高度 将刮刮奖位置居中 将信息层的图片换成文字(重点) 实现 ...
随机推荐
- UVA 247 电话圈 (floyd传递闭包 + dfs输出连通分量的点)
题意:输出所有的环: 思路:数据比较小,用三层循环的floyd传递闭包(即两条路通为1,不通为0,如果在一个环中,环中的所有点能互相连通),输出路径用dfs,递归还没有出现过的点(vis),输出并递归 ...
- Linux压缩那些事儿
tar简介 Linux的压缩命令的源文件只能有一个,这意味在压缩之前不得不先将要压缩的所有文件打包成一个包,然后再压缩包,这样来完成对多个文件的压缩.所以在了解解压缩之前就必须先了解打包命令. Lin ...
- java SpringUtil获取bean
package com.whaty.framework.common.spring; import java.io.PrintStream; import org.springframework.be ...
- css实现阴影效果(box-shadow)
box-shadow 使用方法 设置块阴影 语法: box-shadow:<length> <length> <length> <length> || ...
- php和js一起实现倒计时功能
里获取的php服务端的时间 纯JS是获取客服端时间! <?php //php的时间是以秒算.js的时间以毫秒算 date_default_timezone_set('PRC'); //date_ ...
- Python chr() ord() unichr()
chr()函数用一个范围在range(256)内的(就是0-255)整数作参数,返回一个对应的字符. unichr()跟它一样,只不过返回的是Unicode字符,这个从Python 2.0才加入的un ...
- go_databasetest
go_databasetest go语言的数据库测试: go get github.com/Go-SQL-Driver/MySQL package main import ( _"githu ...
- linux下socket编程-进程间通信
一.什么是Socket Socket接口是TCP/IP网络通信的API,Socket接口定义了许多函数或例程,可以用它们来开发TCP/IP网络上的应用程序. Socket类型有两种:流式Socket ...
- 获取父iframe的高宽
var p_window = window.top; //alert($(p_window).height()); var p_demo = window.top.docu ...
- oracle 创建表空间
--创建数据表空间 create tablespace hcm logging datafile 'G:\oracle\product\10.2.0\oradata\orcl\mydata.dbf' ...