1:新建安装部署项目
打开VS,点击新建项目,选择:其他项目类型->安装与部署->安装项目,然后点击确定.(详细见下图)

此主题相关图片如下:

2:开始打包
2.1

确定即可进入项目文件夹:
双击"应用程序文件夹"在右边的空白处右击,选择添加->文件,将你的做的应用程序的可执行文件(*.exe)和相应的类库(*.dll)和组件添加进来.

[创建程序快捷方式的图标]

然后右击你的可执行文件,创建快捷方式,然后把快捷方式分别剪切到左边的"用户的'程序'菜单"和"用户桌面"中.
这样安装程序安装安装完成后会在 "开始->所有程序"和"桌面"上生成程序的快捷方式.

右击创建的快捷方式 --> 属性窗口,选择[Icon]属性,点击浏览,选择刚添加的setup.ico小图标,确定

2.2

打开解决方案管理器,右击解决方案名称,选择属性:

在打开的属性页中,选择"系统必备",

选上以后,在生成的安装文件包中包含.netframework组件

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

安装包就会打包.NET FrameWork ,在安装时不会从网上下载.NET  FrameWork组件。

2.3

创建的项目名称--> 点击左键,在属性中设置参数如下图

属性[Author]:作者   ex:伤心的小水沟

属性[Manufacturer]:公司名称  ex:ABC有限公司

属性[ProductName]:应用程序名称  ex:学生管理系统

将[InstallAllUsers]属性设置为Ture,这样在控制面板程序中会显示公司的名称;安装时会默认为“任何人”,否则默认为“只有我”

2.4

右击左边的"应用程序文件夹"打开属性对话框:

将属性中的[DefaultLocation]的路径中的"[ProgramFilesFolder][Manufacturer]\[ProductName]"去掉,

变为"[ProgramFilesFolder]\[ProductName]",

不删除"[Manufacturer]"则让打包好的安装程序默认安装到"C:\Programm Files\你的用户名\安装解决方案名称"目录。

2.5

创建卸载程序

在 “应用程序文件夹” 添加文件C:\WINDOWS\system32\msiexec.exe

右击创建msiexec.exe快捷方式,剪切粘贴到用户的“程序”菜单,在这里我已修改其名为 “卸载程序”

点击项目名称,复制属性[ProductCode]的值

点击 用户的“程序”菜单 里的卸载程序(快捷方式),将[ProductCode]复制的值粘贴到[Arguments]的值里,前面加上/X空格

最后生成解决方案

3:打包完成

现在打开解决方案文件夹下的debug文件夹,就可以看到生成的安装文件,点击setup.exe就可以运行安装了。

转载:http://blog.csdn.net/arpaul87/article/details/39494025

C# 程序打包的更多相关文章

  1. 以向VS 程序打包集成自动写入注册表功能为例,介绍如何实现自由控制安装过程

    最近由于项目部署时需要更灵活的控制程序安装的流程以及自定义安装行为,特意研究了一下VS程序打包,把解决办法和大家分享一下. 以VS2010为例: 这是一个已经设置好最基本的Visual Studio ...

  2. VS2012程序打包部署详解

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

  3. 他山之石——vs2013 安装与部署及程序打包

    C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio  .下载地址: InstallShield 2013 Limited Edi ...

  4. c#程序打包大全

    c#程序打包现在分为两种,一种是VS自带的打包方式,还有一种是第三方的打包方式,在VS2013里面是没有自带打包安装部署的,只有第三方的创建. 第三方打包方式很简单,百度Installshield下载 ...

  5. SNF开发平台WinForm之十一-程序打包-SNF快速开发平台3.3-Spring.Net.Framework

    原来我们用的是微软自带的打包工具去打包,但感觉好像也是第三方做的打包并且很是麻烦,还有时不成功报错.那综合考虑就找一个简单实用的打包工具吧,就找到了NSIS这个.具体打包步骤如下: 1.安装NSIS ...

  6. Android 程序打包和安装过程

    APP程序打包与安装的流程: APP的安装过程:

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

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

  8. 将eclipse的应用程序打包成.exe

    转自:http://blog.163.com/loveshijie_1991/blog/static/1760553112012102573437156/ 参考:http://blog.csdn.ne ...

  9. 用命令行将Java程序打包为jar文件

    如何把写好的Java程序打包为jar文件呢?有两种方式可以选择 1.命令行的方式: 打包jar cf JAR文件名称 程序文件名称或者程序所在的文件夹举例:jar cf MyApp.jar D:Jav ...

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

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

随机推荐

  1. traceroute小结 come from CSDN author:houdong

    traceroute程序可以使我们看到IP数据报从一台主机传到另一台主机的所经过的路由,并且可以使用IP源站路由选项. traceroute取代IP RR的原因 1 不是所有的路由器都支持IP RR选 ...

  2. 解决IE10以下对象不支持“bind”属性或方法

    IE10一下的浏览器,如果在JS代码中用了bind函数,那么就会报“SCRIPT438: 对象不支持“bind”属性或方法” 因为浏览器没有提供这个参数的方法,所以我们就自己写一个bind,来让这个参 ...

  3. ubuntu下安装pyqt5

    在网上看了很多ubuntu系统中安装pyqt5,感觉有些麻烦. 主要的库只有一个:python3-pyqt5 可通过新立得安装,也可通过shell命令安装 sudo apt-get install p ...

  4. Codeforces 509C Sums of Digits

    http://codeforces.com/contest/509/problem/C  题目大意: 给出一个序列,代表原序列对应位置数的每一位的数字之和,原序列单调递增,问原序列的最后一个数最小的方 ...

  5. CentOS6.5切换 语言(附带6.5官方下载地址)

    1 在终端中输入命令[sudo vim /etc/sysconfig/i18n]来编辑i18n文件, 2 把“zh_CN.UTF-8”修改为“en_US.UTF-8”, 3 保存修改并退出,如果提示这 ...

  6. 安卓,通过本地应用分享到微信、facebook等

    别的不说了,直接上代码. 支持分享到微信.微博.facebook.twitter package com.example.shareSample; import java.util.List; imp ...

  7. Jsensation | 氪加

    Jsensation | 氪加 www.jsensation.com

  8. 弹出框layer的使用封装

    layer弹出框官方网址:http://layer.layui.com/ layer常用方法的封装:layerTool.jsp layer.config({ extend: 'extend/layer ...

  9. C++简介

    本文仅用于学习交流,转载请注明:http://www.cnblogs.com/mxbs/p/6266466.html  Hello,C++ World! 简介: C++融合了3中不同的编程传统:C语言 ...

  10. json对象与字符串的相互转换,数组和字符串的转换

    1.json对象转换为字符串 JSON.stringify(value [, replacer] [, space])  var student = new Object(); student.id ...