程序做好后需要打包部署后才能使用

一、创建安装项目

解决方案右键-添加-新建项目-其他项目类型-安装和部署-双击进入文件系统。

二、制作安装程序

一个完整的安装程序包括项目输出文件、内容文件、桌面快捷方式和注册表项等。

1、添加项目输出

(1)在“文件系统”的“目标计算机上的文件系统”节点下选中应用程序文件夹,单机鼠标右键-添加-项目输出

(2)在添加项目输出组中选择你创建的windows项目-选择主输出-确定,即可将项目添加到安装程序中

2、添加内容文件

在右半边右键-添加-文件。选择你想要的文件添加进去

3、创建桌面快捷方式

(1)在主输出来自xx(活动)右键-创建主输出xx(活动)的快捷方式

(2)把主输出来自xx(活动)的快捷方式重命名为“快捷方式”四个字

(3)把生成的快捷方式拖到左边的“用户桌面”文件夹下

4、添加注册表

(1)在右边的解决方案管理器中选中安装项目(如果没重命名的话应该叫Setup)-右键-视图-注册表。

(2)在左边的左侧表拦中一次展开 HKEY_CURRENT_USER 下的Software 下的 Manufacturer,重命名你想要的名字。

(3)在重命名的文件夹上右键-新建-选择要添加的注册表

(4)注册表上右键属性输入想要的内容或者直接在软件右下角属性栏中填写

5、生成Windows安装程序

以上步骤完成后在解决方案管理器中选中安装项目上右键生成

文件会生成到你当前项目的文件夹里 项目名-安装项目名-Debug

一共会生成两个文件,一个.exe 一个.msi。

安装程序制作,一般有几种解决方案:
一.没有特殊要求,使用VS自带的安装项目,可以直接生成包含EXE和MSI两个文件的安装文件.这两个文件是基于MS的INSTALLER服务的.一般只需要使用MSI程序即可.但需要客户机上运行INSTALLER服务.(现在的WINDOWS系统上都会有这个服务)
二.如果需要打包成正式一点的安装包,还是需要使用INSTALLSHILED.这个工具非常强大,一般的软件都使用的这个,而且网上有大量的使用手册/操作指南之类的帮助文件.
三.特殊情况自已用C#写安装程序.比如,我们在为SBO写ADDON的安装程序时,就需要自己写安装程序.这样的安装程序是把所有的文件作为嵌入资源放在一个EXE文件中.运行此安装程序时,可以把所有的文件COPY到指定目录,并且由于程序是自己写的,在安装期间可以使用大量的自定义操作,比如创建快捷方式,建立数据库等.由于.NET支持XCOPY方式安装,这种方式也非常好用.(转) 所以说这么生成的安装程序就用msi的就可以了。

(22)C#windows打包部署的更多相关文章

  1. R shiny 小工具Windows本地打包部署

    目录 服务器部署简介 windows打包部署 1. 部署基本框架 2.安装shiny脚本需要的依赖包 3.创建运行shiny的程序 [报错解决]无法定位程序输入点EXTPTE_PTR于动态链接库 将小 ...

  2. 【基于WinForm+Access局域网共享数据库的项目总结】之篇三:Access远程连接数据库和窗体打包部署

    篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...

  3. 使用IntelliJ IDEA和Maven构建Java web项目并打包部署

    爱编程爱分享,原创文章,转载请注明出处,谢谢! http://www.cnblogs.com/fozero/p/6120375.html 一.背景 现在越来越多的人使用IntelliJ IDEA工具进 ...

  4. C# Winform打包部署时添加注册表信息实现开机启动

    使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...

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

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

  6. 【转】C# Winform打包部署时添加注册表信息实现开机启动

    使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...

  7. QT程序在windows下部署发布

    转载:http://www.cnblogs.com/Fan_Fan/archive/2010/05/29/1746860.html QT程序在windows下部署发布 以下包括了部分网上收集的,以及q ...

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

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

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

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

随机推荐

  1. 一个python的文件对比脚本

    脚本主要用来给游戏客户端做热更的. 处理方式就是针对每个文件求其MD5值,再根据文件的目录和名字对比两个版本的MD5值,如果不一样,则这次热更就需要更新这个文件. 用法很简单. 1,生成MD5码列表 ...

  2. 剑指Offer - 九度1521 - 二叉树的镜像

    剑指Offer - 九度1521 - 二叉树的镜像2013-11-30 23:32 题目描述: 输入一个二叉树,输出其镜像. 输入: 输入可能包含多个测试样例,输入以EOF结束.对于每个测试案例,输入 ...

  3. 《Cracking the Coding Interview》——第13章:C和C++——题目4

    2014-04-25 19:50 题目:深拷贝和浅拷贝有什么区别?如何应用? 解法:深拷贝传值,浅拷贝传引用.java里对此做了限制,而C++里面用起来更自由.大结构不宜传值,因为拷贝过程效率低. 代 ...

  4. 基于TensorFlow的循环神经网络(RNN)

    RNN适用场景 循环神经网络(Recurrent Neural Network)适合处理和预测时序数据 RNN的特点 RNN的隐藏层之间的节点是有连接的,他的输入是输入层的输出向量.extend(上一 ...

  5. lowercase calligraphic letters

    本系列文章由 @yhl_leo 出品,转载请注明出处. 文章链接: http://blog.csdn.net/yhl_leo/article/details/53454402 LaTeX公式表达中,经 ...

  6. js动态生成下拉列表

    经常需要用到js动态生成下拉列表的功能,记录下来备用. 示例需求:通过ajax请求,从后台获取用户姓名列表,并添加到下拉列表中.js代码如下: function getNameList(){ //如果 ...

  7. Android 热更新是如何实现的?

    Android开发中,我们常常遇到热更新这个概念,而这个热更新具体是怎么实现的呢?今天在网上看到一个大神分享的热更新相关实现原理和实现代码,感觉灰常不错,分享给广大码农盆友look look . Cl ...

  8. HDU 6034 Balala Power!(贪心+排序)

    Balala Power! Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 131072/131072 K (Java/Others) ...

  9. [bzoj3601] 一个人的数论 [莫比乌斯反演+高斯消元]

    题面 传送门 思路 这题妙啊 先把式子摆出来 $f_n(d)=\sum_{i=1}^n[gcd(i,n)==1]i^d$ 这个$gcd$看着碍眼,我们把它反演掉 $f_n(d)=\sum_{i=1}^ ...

  10. Java 虚拟机类加载机制

    看到这个题目,很多人会觉得我写我的java代码,至于类,JVM爱怎么加载就怎么加载,博主有很长一段时间也是这么认为的.随着编程经验的日积月累,越来越感觉到了解虚拟机相关要领的重要性.闲话不多说,老规矩 ...