VS2012没有自带打包工具,所以要先下载并安装一个打包工具。我采用微软提供的打包工具:  InstallShield2015LimitedEdition。下载地址:https://msdn.microsoft.com/en-us/library/dn531020.aspx。注意:要先注册才能下载,注册的时候一定要填写自己本人的准确的邮箱号码,注册成功后会发送一封邮件,内含注册码。把打包工具安装好后,先使用注册码激活后再进行打包,如果选择试用就进行打包,安装打包后的软件的时候会有提示,大概内容就是:本软件是使用的未注册的工具进行打包的。(PS:多影响用户体验啊,还没有安装使用就收到警告提示)

打包的详细过程:

1.新建安装部署项目

在要打包的项目的“解决方案资源管理器”中,右击“解决方案***” 》添加》新建项目。在弹出框中选择和设置信息如下图:

创建成功后的资源管理器的结构图如下图:

2.设置程序基本信息

Application Information主要设置程序在安装时显示的有关程序的一些信息,包括:程序开发公司、程序名、程序版本号和公司官网等。

General Information 还可以设置更加详细的信息:

3.设置安装需求

Installation Requirements重点是选择支持的操作系统和其他依赖的软件框架。根据自己需求选择即可。

4.添加应用文件

Application Files一项用于设置应用程序锁包含的文件。程序引用的DLL,其他文件,如:exe文件,chm文件等都在这一步添加。

首先设置程序的主输出(主输出就是程序主体,包括程序的启动和入口):

操作步骤:1.选中程序名(图中左边红框) 》 2.点击“Add Project Outputs”  》 3.勾选主输出(图中左边红框)》4.点击“OK”

通过“Add Files”添加程序引用的DLL及其他文件。

5.设置程序快捷图标

操作步骤:

1.点击左边的“Create an uninstallation shortcut”,为程序创建卸载项目;

2.点击“New...”,在弹出的菜单中选择上一步生成的“*.主输出”文件,默认名字是“Built”,通过“rename”按钮可以改变名字,本名字将显示在安装程序的图标下面(如桌面上的QQ图标);也可以设置程序Shortcut,即选择程序安装后在桌面或开始菜单中显示的图标;

3.设置程序图标和卸载选项图标的显示位置,选项如下图4方框。

6.设置程序的注册表信息

也可以不设置,跳过此步骤。

7.设置安装视图

根据自身需求进行设置即可。

8.发布程序

上面的安装步骤执行完成后即可生成解决方案,但是生成的文件会放在DVD-5文件夹内,想要使用安装文件的话就必须拷贝整个文件夹否则安装会出错,这样内容很繁琐,而且给客户的安装体验度也很差。

解决方法:使用SingleImage的安装包,将所有文件集成到一个Setup.exe中,再次安装的时候只需要一个Setup.exe即可。

步骤:右击“解决方案” 》 属性,再按下图进行设置。

9.将安装环境一并打包

操作步骤如下图:

经过上述步骤,程序打包完成,打包后的exe文件:

在打包过程中,可能会遇到各种报错,根据错误编号放狗搜索,一个个解决完,那么打包后的程序一定可以安装执行。

VS2012程序打包部署详解的更多相关文章

  1. 【转】VS2012程序打包部署详解

    上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...

  2. [转载]VS2012程序打包部署详解

    上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...

  3. (转) VS2012程序打包部署详解

    程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因微软没有将打包工具集成在开发环境中,但是我知道总会有解决办法的.     经过翻阅资料发现 ...

  4. VS2012及以上版本 程序打包部署详解

    引用:  http://blog.csdn.net/zhang_xinxiu/article/details/9099757 程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的 ...

  5. VS2012 QT程序打包部署详解

    1.设置安装程序集 InstallShield安装完成后,执行以下步骤右键解决方案-->添加-->新建项目-->其他项目类型-->安装和部署,具体操作如下图: 2.发布程序 在 ...

  6. 【CITE】VS2012程序打包部署

      选择Debug模式将项目重新生成,并保证没有任何bug   选择解决方案,右击——添加——新建项目——安装和部署   下载过打包工具InstallShield2013LimitedEdition, ...

  7. VS2010安装项目程序打包操作详解

    (转自:http://blog.sina.com.cn/s/blog_74f702e60101at62.html) 1.打开VS2010,选择 新建项目---其他项目类型---Visual Studi ...

  8. 用Advanced Installer制作DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版详解

    关于 DotNetBar for Windows Forms 12.0.0.1_冰河之刃重打包版 --------------------11.8.0.8_冰河之刃重打包版-------------- ...

  9. 转 vagrant package[打包命令]详解

    转 vagrant package[打包命令]详解   vagrant的一个非常重要的功能就是在你的同事之间分享你的box从而使大家的开发环境保持同步,打包[package]正是实现这一功能的关键所在 ...

随机推荐

  1. js callee,caller学习

    原文地址:js callee,caller学习 /* * caller 返回一个对函数的引用,该函数调用了当前函数. * 如果函数是由顶层调用的,那么 caller包含的就是 null . * 如果在 ...

  2. 通过自定义特性,使用EF6拦截器完成创建人、创建时间、更新人、更新时间的统一赋值(使用数据库服务器时间赋值,接上一篇)

    目录: 前言 设计(完成扩展) 实现效果 扩展设计方案 扩展后代码结构 集思广益(问题) 前言: 在上一篇文章我写了如何重建IDbCommandTreeInterceptor来实现创建人.创建时间.更 ...

  3. 移动BPM解决方案分享

    畅通开放  无边界的渠道 效率倍增  更高效的处理方式 即时共享  更强大的决策能力 各种终端应用 帮您实现:新任务通知.任务预警.催办.任务审批.任何数据汇总提醒消息通知...... 短信 客户端: ...

  4. Xamarin Android 应用程序内图标上数字提示

    最近在用 Xamarin 做一个 Android 应用,打开应用时,如果有新消息,需要在应用内的 Toolbar 或者首页的图标上显示数字提示.在这里和大家分享一下实现方法,如果你有更新好的实现方法, ...

  5. 【教程】SQLite数据库修复

    SQLite 大家都知道,就不多说了. 有时候数据量大了,或者存储过程中出现异常,数据库就可能会出问题. 这是以前公司产品出现过的问题,导致软件都打不开了,我花了不少时间才解决的,趁现在有空贡献出来. ...

  6. NV显卡Ubuntu14.04更新软件导致登录死循环,不过可以进入tty模式

    注意:此方法只适用于nv显卡的电脑! 在网上寻找各种方法无果的情况下,选择重新安装显卡驱动,成功登录进入图形界面. 一.首先需要在另外一台电脑(windows系统也可以)上下载NVIDIA相应显卡驱动 ...

  7. 元素绝对居中终极办法兼容IE8

    <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...

  8. Lesson 23 A new house

    Text I had a letter from my sister yesterday. She lives in Nigeria. In her letter, she said that she ...

  9. Visual Studio Code 使用Git进行版本控制

    Visual Studio Code 使用Git进行版本控制 本来认为此类教程,肯定是满网飞了.今天首次使用VS Code的Git功能,翻遍了 所有中文教程,竟没有一个靠谱的.遂动笔写一篇. 请确保你 ...

  10. Node.js实现RESTful api,express or koa?

    文章导读: 一.what's RESTful API 二.Express RESTful API 三.KOA RESTful API 四.express还是koa? 五.参考资料 一.what's R ...