VS2010程序打包
今天,小白就来给各位做个打包的新手教程,此文仅是为了记录自己的学习过程与方便其他初次接触的打包的朋友们总结一下,希望大家能够受用。废话不多说,下面我们就来讲解下打包工程。首先,在项目中添加一个安装项目,然后可以自定义最终的Exe执行名称,如下图。
接下来,在应用程序文件夹中右键,选择必要的文件。(将你你已经生成并运行的程序找到如标记文件夹下的文件,全部添加进去,包括数据库,配置文件等内容。但是要注意将文件夹建立的相对应,文件结构一致)
同时,把需要创建程序快捷方式的图标也添加进来:后缀名为:ico

接下来,在创建的项目名称(Setup1)上点击右键:属性,然后接下来选择系统必备,即选择.NET的版本,和Windows Installer3.1(可选项),并 选择:“从与我应用程序相同的位置下载系统必备组件”,这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。(3.5的尤其大!因为他包括了2.0,3.0,3.5的.net framework环境),在vs2010下面,如果要打包.net framework 2.0,可以选择3.5,里面就自动包含了2.0的环境,但是这样会照成安装包200多M,如果要解决这个问题,可以从安装过VS2005或者vs2008的电脑的安装目录如:C:\Program Files\Microsoft Visual Studio 8\SDK\v2.0\BootStrapper\Packages 下找到dotnetfx文件夹 copy到VS2010安装目录如:C:\Program Files\Microsoft SDKs\Windows\v7.0A\Bootstrapper\Packages下。这样在系统必备里面就可以选择2.0的环境了。

见链接:http://www.cnblogs.com/wangqc/p/vs2010framework3_5sp1.html,接下来,点击应用程序文件夹,可以通过设置参数来设置安装文件的目录(路径),如下图。第一个为系统主目录(默认C:\Programe),第二个为公司名([Manufacturer]),第三个为应用程序名称,这样在安装时就会创建两层的文件路径。需要删除DefaultLocation中的:[Manufacturer] 。删除后只有应用程序的名称。

然后左击点击项目名称(setup1),在属性中设置参数如下图:其中Author 为作者;Manufacturer为公司名称;ProductName为应用程序的名字;
例如我们设置为:BeyondKKO;Manufacturer:自由公司;ProductName:串口测试。把InstallAllUsers 设置为True 。(这样在“控制面板”程序中会显示公司的名称;
在安装时会默认为“任何人”,否则默认为“只有我”)

接下来就轮到创建应用程序图标与在安装程序中加入写在功能了。首先要为主程序创建快捷方式,即在应用程序文件夹”中的.exe文件中,点击右键,创建快捷方式:

然后将新建号的快捷方式重命名“前台收银系统”,然后点击右键属性:选择Icon

确定后,拖动此设置好的快捷方式到“用户桌面”,然后在用户的‘程序’菜单”中添加一个文件夹,命名为:“前台收银系统”,然后同样的方式创建一个快捷方式,拖动到“前台收银系统”中;
然后给.NET应用程序创建一个卸载程序:在“应用程序文件夹”中添加:C:Windows\System32\Msiexec.exe,右键创建快捷方式,重命名为:卸载,把此快捷方式拖动到“前台收银系统”中;


点击项目名称(Setup1),在属性中找到:ProductCode,复制此ProductCode ,粘贴到“卸载”快捷方式的Arguments属性,前面加/x空格


完成以上步骤,就可以生成解决方案了。生成解决方案后,在debug文件夹中就是我们需要的安装包.该文件夹下面的exe文件就是可执行安装文件了。
如果上面有什么讲的不明白的地方,可以qq联系我,可以看联系方式。
VS2010程序打包的更多相关文章
- VS2010程序打包操作(超详细的)
1. 在vs2010 选择“新建项目”----“其他项目类型”----“Visual Studio Installerà“安装项目”: 命名为:Setup1 . 这是在VS2010中将有三个文件夹, ...
- VS2010程序打包操作
摘录:http://www.cnblogs.com/daban/archive/2012/06/27/2565449.html 1. 在vs2010 选择“新建项目”----“其他项目类型”-- ...
- VS2010程序打包操作--超详细
1. 在vs2010 选择“新建项目”----“其他项目类型”----“Visual Studio Installerà“安装项目”: 命名为:Setup1 . 这是在VS2010中将有三个文件夹, ...
- VS2010程序打包操作(超详细的)转
1. 在vs2010 选择“新建项目”----“其他项目类型”----“Visual Studio Installerà“安装项目”: 命名为:Setup1 . 这是在VS2010中将有三个文件夹, ...
- VS2010程序打包操作(结合图片详细讲解)
附视频教程:http://www.cnblogs.com/mengdesen/archive/2011/06/14/2080312.html 1. 在vs2010 选择“新建项目”----“其他项 ...
- VS2010开发程序打包详解
VS2010开发程序打包详解 转自:http://blog.sina.com.cn/s/blog_473b385101019ufr.html 首先打开已经完成的工程,如图: 下面开始制作安装程序包. ...
- C#windows应用程序打包(VS2010+SQLServer2008)
C#windows应用程序打包(VS2010+SQLServer2008) 开发环境:VS2010+SQL Server 2008 操作系统:win7_32bit 旗舰版 开发语言:C# 项目名称:学 ...
- 以向VS 程序打包集成自动写入注册表功能为例,介绍如何实现自由控制安装过程
最近由于项目部署时需要更灵活的控制程序安装的流程以及自定义安装行为,特意研究了一下VS程序打包,把解决办法和大家分享一下. 以VS2010为例: 这是一个已经设置好最基本的Visual Studio ...
- VS2012程序打包部署详解
VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具: InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...
随机推荐
- ServletDemo
1. Servlet 接口 继承 Servlet 接口,实现Servlet 接口的 所有抽象方法! 实现类代码 package xw.servlet; import java.io.IOExcepti ...
- HW 研发体系机构的几个术语
PDT(product development team)产品开发团队 类似于产品经理 程序员 -- PL -- PM --开发代表 -- PDT LEADER --------------- ...
- gcc的-D和-U参数:宏的设置与取消
http://blog.chinaunix.net/uid-7213338-id-2658068.html gcc的-D和-U参数:宏的设置与取消 2006-10-08 22:59:06 分类: L ...
- 在serviceImpl里使用自身的方法
@Service("tbLeaveRegisterService")@Transactionalpublic class TbLeaveRegisterServiceImpl ex ...
- 删除本地git版本库中受版本控制的文件
git乱码解决方案汇总 乱码原因 搜索一番,发现git文件名.log乱码,是普遍问题,这其中有编码的原因,也有跨平台的原因.主要原因是Windows 系统中的Git对中文文件名采用不同的编码保存所致 ...
- FW:使用weave管理docker网络
Posted on 2014-11-12 22:20 feisky 阅读(1761) 评论(0) 编辑 收藏 weave简介 Weave creates a virtual network that ...
- 转: svn合并分支到trunk
http://sepcot.com/blog/2007/04/svn-merge-branch-trunk SVN: Merging a Branch into Trunk This is mor ...
- java调用Http请求 -HttpURLConnection学习
最常用的Http请求无非是get和post,get请求可以获取静态页面,也可以把参数放在URL字串后面,传递给servlet,post与get的不同之处在于post的参数不是放在URL字串里面,而是放 ...
- Openmpi 编译安装+集群配置 + Ubuntu14.04 + SSH无密码连接 + NFS共享文件系统
来源 http://www.open-mpi.org/ 网络连接 SSH连接,保证各台机器之间可以无密码登陆,此处不展开 hosts文件如下 #/etc/hosts 192.168.0.190 mas ...
- 【tips】判断两个整数是否是同一个数量级
leetcode刷题的时候,需要用到,已知整数A,B,且A>B,判断AB是否是同一数量级的. 第一想到的是不停地除以10,得到每个数字的数量级再进行比较,太麻烦: 转而向转化成字符串比较,还是麻 ...