(22)C#windows打包部署
程序做好后需要打包部署后才能使用
一、创建安装项目
解决方案右键-添加-新建项目-其他项目类型-安装和部署-双击进入文件系统。
二、制作安装程序
一个完整的安装程序包括项目输出文件、内容文件、桌面快捷方式和注册表项等。
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打包部署的更多相关文章
- R shiny 小工具Windows本地打包部署
目录 服务器部署简介 windows打包部署 1. 部署基本框架 2.安装shiny脚本需要的依赖包 3.创建运行shiny的程序 [报错解决]无法定位程序输入点EXTPTE_PTR于动态链接库 将小 ...
- 【基于WinForm+Access局域网共享数据库的项目总结】之篇三:Access远程连接数据库和窗体打包部署
篇一:WinForm开发总体概述与技术实现 篇二:WinForm开发扇形图统计和Excel数据导出 篇三:Access远程连接数据库和窗体打包部署 [小记]:最近基于WinForm+Access数据库 ...
- 使用IntelliJ IDEA和Maven构建Java web项目并打包部署
爱编程爱分享,原创文章,转载请注明出处,谢谢! http://www.cnblogs.com/fozero/p/6120375.html 一.背景 现在越来越多的人使用IntelliJ IDEA工具进 ...
- C# Winform打包部署时添加注册表信息实现开机启动
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...
- 【转】VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
- 【转】C# Winform打包部署时添加注册表信息实现开机启动
使用VS自带的打包模块可以很方便的对项目进行打包部署,同时我们也可以在安装部署时操作注册表实现开机启动软件.具体实现如下: 1.添加安装部署项目后,鼠标右键安装项目->视图->注册表,HK ...
- QT程序在windows下部署发布
转载:http://www.cnblogs.com/Fan_Fan/archive/2010/05/29/1746860.html QT程序在windows下部署发布 以下包括了部分网上收集的,以及q ...
- [转载]VS2012程序打包部署详解
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
- (转) VS2012程序打包部署详解
程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因微软没有将打包工具集成在开发环境中,但是我知道总会有解决办法的. 经过翻阅资料发现 ...
随机推荐
- Percona-Tookit工具包之pt-slave-find
Preface If we want to check out how many slaves in our replication environment.We can execut ...
- [转载]Network-Emulator Network-Emulato
Network-Emulator-Toolkit网络模拟器使用详细介绍 by:授客 QQ:1033553122 原理介绍 图1 如上图,一个ADSL用户通过modem连接到网络,通过网络应用如IE,M ...
- selenium fluentwait java实例
本文转自:http://www.programcreek.com/java-api-examples/index.php?api=org.openqa.selenium.support.ui.Flue ...
- NGUI-UIProgressBar,UIScrollBar,UISlider
UIProgressBar是UIScrollBar和UISlider的基类 1.先来看下UIProgressBar(进度条)的使用 层次: progressBar的Inspector视图: 而fore ...
- HttpClient实现POST参数提交
HttpClient client = new HttpClient(); //使用FormUrlEncodedContent做HttpContent var content = new FormUr ...
- VS2017+EF+Mysql生成实体数据模型(解决闪退的坑)
原文:VS2017+EF+Mysql生成实体数据模型(解决闪退的坑) 最近要使用VS2017+EF+Mysql,在生成实体数据模型踏过一些坑,在此做个总结. 1.先下载并安装 mysql-connec ...
- swagger-ui enum select
swagger-ui enum select Array[string] https://dejanstojanovic.net/aspnet/2018/march/displaying-multip ...
- Where to Run LightOJ - 1287(概率dp)
Where to Run LightOJ - 1287(概率dp) 题面长长的,看了半天也没看懂题意 不清楚的地方,如何判断一个点是否是EJ 按照我的理解 在一个EJ点处,要么原地停留五分钟接着走,要 ...
- uoj228:基础数据结构练习题
题意:http://uoj.ac/problem/228 sol :线段树开根操作 对于节点x,可以在max[x]-min[x]<=1时直接做,转化为区间减或区间覆盖 #include< ...
- linux中sed工具的使用
sed 本身也是一个管线命令,而且 sed 还可以将数据进行取代.删除.新增.撷取特定行等等的功能. $ sed [-nefr] [动作] 选项与参数: -n :使用安静(silent)模式.在一般 ...