(转自:http://blog.sina.com.cn/s/blog_74f702e60101at62.html)

1、打开VS2010,选择 新建项目---其他项目类型---Visual Studio Installer----安装项目

这是在VS2010中将有三个文件夹,

1.“应用程序文件夹”表示要安装的应用程序需要添加的文件;

2.“用户的‘程序’菜单”表示:应用程序安装完,用户的“开始菜单”中的显示的内容,一般在这个文件夹中,需要再创建一个文件用来存放:应用程序.exe和卸载程序.exe;

3.“用户桌面”表示:这个应用程序安装完,用户的桌面上的创建的.exe快捷方式。

2、在应用程序文件夹,点击右键添加文件:添加要打包的文件(添加的文件一般是已经编译过应用程序的debug目录下的文件)

如果debug下面有子文件则需要"添加文件夹",例如data,然后将对应子文件里的内容添加到此文件夹中;

3、在创建的项目名称(Setup1)上点击右键--属性

选择系统必备

然后选择.NET的版本,和Windows Installer3.1(可选项)

选择:“从与我应用程序相同的位置下载系统必备组件”

这样安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET FrameWork组件;但是安装包会比较大。

------------------------------------------我是华丽丽的分割线-------------------------------------
【解决VS2010发布.NET 2.0 创建的项目,安装.NET FrameWork3.5的问题】

VS2010发布.NET2.0的版本,在创建安装程序时,需要设置启动条件:在项目名称(setup1)上,点击右键选择“视图”----“启动条件”:

然后VS2010会创建如下文件:

在“启动条件”中, 点击“.NET Framework”在Version上面选择.NET Framework 2.0;

这样.NET Framework 2.0上创建的项目在安装时,就不会安装.NET3.5或其他版本,

也不会重启(解决.NET 2.0 创建的项目,安装.NET FrameWork3.5的问题)。

---------------------------------结束喽!继续.NET Framework 4.0的打包哦-------------------------

4、.设置安装文件的目录(路径):

创建的项目名称(setup1)点击左键,在属性中设置参数如下:

其中Author 为作者;Manufacturer为公司名称;ProductName为应用程序的名字;

把InstallAllUsers 设置为True 。

(这样在“控制面板”程序中会显示公司的名称;

在安装时会默认为“任何人”,否则默认为“只有我”)

左键点击“应用程序文件夹”,如下图:第一个为系统主目录(默认C:\Programe),第二个为公司名([Manufacturer]),第三个为应用程序名称,这样在安装时就会创建两层的文件路径。需要删除DefaultLocation中的:[Manufacturer] 。删除后只有应用程序的名称。

5、创建应用程序和卸载程序

在应用程序文件夹中的exe文件,点击右键创建快捷方式,命名“我的小工具”,确定后,拖动此快捷方式到“用户桌面”;

在“用户的程序菜单”中添加一个文件夹,命名为:“程序小工具”,

然后同样的方式创建CheckingApplication.exe一个快捷方式(“我的小工具”),拖动到“程序小工具”中;

然后给.NET应用程序创建一个卸载程序:

在“应用程序文件夹”中添加:C:Windows\System32\Msiexec.exe

在msiexec.exe上右键创建快捷方式,重命名为:卸载,把此快捷方式拖动到“程序小工具”;

击项目名称(Setup1),在属性中找到:ProductCode

复制此ProductCode ,粘贴到“卸载”快捷方式的Arguments属性,前面加/x空格

6、 完成以上步骤,就可以生成解决方案了。

7、生成解决方案后,在debug文件夹中就是我们需要的安装包.

8、 安装完在开始菜单中有“程序小工具”的文件夹,里面有我们创建的“我的小工具”和“卸载”;当然桌面上也有我们创建的快捷方式。

VS2010安装项目程序打包操作详解的更多相关文章

  1. VS2012程序打包部署详解

    VS2012没有自带打包工具,所以要先下载并安装一个打包工具.我采用微软提供的打包工具:  InstallShield2015LimitedEdition.下载地址:https://msdn.micr ...

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

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

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

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

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

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

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

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

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

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

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

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

  8. Python3调用C程序(超详解)

    Python3调用C程序(超详解) Python为什么要调用C? 1.要提高代码的运算速度,C比Python快50倍以上 2.对于C语言里很多传统类库,不想用Python重写,想对从内存到文件接口这样 ...

  9. CentOS 6.3下Samba服务器的安装与配置方法(图文详解)

    这篇文章主要介绍了CentOS 6.3下Samba服务器的安装与配置方法(图文详解),需要的朋友可以参考下   一.简介  Samba是一个能让Linux系统应用Microsoft网络通讯协议的软件, ...

随机推荐

  1. 远程Service的显示 / 隐式启动

    在进程间通信时,常会设计开启远程 Service 的情况.开启远程 Service 的方式有两种,一种时显示开启,一种是隐式开启.下面分别来看: 一.隐式开启 服务端:Service 所在 Andro ...

  2. DAY4 if、while和for

    一.if 判断 语法一: if 条件: # 以下是上一条if 的子代码块 print(子代码1) print(子代码2) print(子代码3) if 运行完之后会执行代码下方 上一缩进级 的代码块 ...

  3. delphi 程 序从exe运行改成dll库

    第一种方法: 具体步骤: 1.生成新的或着打开已经存在的工程文件(DPR)(Project1.dpr). 2.选择[View]—>[Project Manager],选中[ProjectGrou ...

  4. 雷林鹏分享:XML 实例

    XML 实例 这些例子演示了 XML 文件.XML 格式化和 XML 转换(XSLT). 还演示了与 XML 一起使用的 JavaScript(AJAX). 查看 XML 文件 查看一个简单的 XML ...

  5. C#复习题(概念) --C#学习笔记

    第一章 1.公共语言架构(CLI)由哪几部分组成? (1)通用类型系统:定义了一套类型系统的框架,规定了数据类型的声明.使用和管理方法. (2)公共语言规范:一组语言规则的集合 (3)通用中间语言:一 ...

  6. Bipartite Segments CodeForces - 901C (区间二分图计数)

    大意: 给定无向图, 无偶环, 每次询问求[l,r]区间内, 有多少子区间是二分图. 无偶环等价于奇环仙人掌森林, 可以直接tarjan求出所有环, 然后就可以预处理出每个点为右端点时的答案. 这样的 ...

  7. CoordinatorLayout、AppBarLayout、CollapsingToolbarLayout的用法,让Toolbar与系统栏融为一体

    CoordinatorLayout其实是加强版的FrameLayout布局,可以监听期所有子控件的各种事件,由Design Support库提供的,能体现Material Design 的魔力.能解决 ...

  8. shiro中记住我功能

    Shiro提供了记住我(RememberMe)的功能,比如访问如淘宝等一些网站时,关闭了浏览器下次再打开时还是能记住你是谁,下次访问时无需再登录即可访问,基本流程如下: 1.首先在登录页面选中Reme ...

  9. 文本统计器(Java)

    1. 创建一个类,实现统计文本文件中各类字符和字符串的个数的功能,要求实现: a) 按字符统计,输出各个字符的数量 b) 按单词统计,输出各个单词的数量 2. 在b)的基础上实现一个类keywordI ...

  10. leetcode-algorithms-3 Longest Substring Without Repeating Characters

    leetcode-algorithms-3 Longest Substring Without Repeating Characters Given a string, find the length ...