Winform 程序打包及安装
前言
近期被公司外派到驻空调厂的项目组,支援一个TCP相关的程序对接。主要是做智能门禁系统,然后主要是统计出实时的进出人数。
我这边能作为服务端,门禁设备作为客户端,整个流程并不算复杂,根据协议来写,前期大概效果如下所示:

Winform打包
做完之后呢,考虑到要放在服务器上面,所以,直接采用打包的方式,具体打包流程如下:
首先呢,打包需要用到 InstallShield Limit EditionProject
因为我已经安装过InstallShield 了,所以下面会显示两个。
一般如果是第一次使用的话,只有下边那个灰色的图标,点击会打开一个网页,说明你的VS程序中本身没有带打包工具。按照提示的步骤来做

点击上面的step2的网址,进入到另一个网页,是有关注册人的信息:

填写完右边的信息,点击“download now”,则会跳转到一个页面显示你的激活码,注意保存此激活码。页面下部有下载链接,点击下载并安装(安装时退出VS) 注:如果country下拉框打不开,请改用谷歌浏览器尝试。除了邮箱,其余得可以随意填写

会下载到一个名为:InstallShield2012SPRLimitedEdition.exe的安装包,用管理员权限运行安装完后。重新启动VS2012。
重新打开VS ,打开你要进行打包的程序,右击解决方案,(如果还按第一步中从菜单中选择,那么不是真正的部署,到后期不会出现选择文件。)选择添加——新项目——其他项目:


点OK,这时候不再是打开网页,这时打开会提示激活或者是试用。第一项激活,然后输入激活码,第二项是试用。

选择Next,进入下一步

输入前两步保存的激活码,进行激活点击Activate

激活成功

激活完成,进入到部署界面

上图中,图下方左右的箭头代表上一步,下一步。
第一步:application information:基本配置,自定义填写

第二步:选择软件的安装版本, 选择是否安装软件相关联的程序

第三步:添加输出按如下图步骤

选择左侧菜单, 新建source,然后同上步骤,选择"add project output"添加源文件,然后选中资源,右键Resolve Project OutPut



第四步:设置输出快捷方式

第五步:重新命名Built,(例如:myapplication)创建桌面快捷方式.

重新编译,然后找到打包方案文件中的setup安装文件就可以开始安装部署了。


最终效果
安装完成,效果如下所示:

Winform 程序打包及安装的更多相关文章
- VS2013 Winform程序打包部署 InstallShield2015LimitedEdition
VS2013 Winform程序打包部署 VS2013默认是没有安装打包程序的,需要手动安装,我安装的是 InstallShield2015LimitedEdition. 1.点击解决方案,右键,选择 ...
- 用installshield2013 将winform程序打包成exe执行程序
前期准备工作 1,一个已经测试通过的winform程序 2,安装好的installshield2013插件 ps:一般VS都没有安装此插件,需要自己去下载 打包步骤 1,新建一个打包程序 ps:如 ...
- WinForm程序打包工具InnoSetup使用说明图文教程
WinForm程序打包工具InnoSetup使用说明图文教程 WinForm程序开发测试好了,如果将Debug/Release里面的文件发给客户使用,会让客户觉得你不够专业,但是使用VS自带的打包工具 ...
- Android 程序打包和安装过程
APP程序打包与安装的流程: APP的安装过程:
- WinForm程序打包说明
如果使用的是VS2013需要下载并安装 Microsoft Visual Studio 2013 Installer Projects 下载地址:https://visualstudiogallery ...
- C# 程序打包成安装项目
Xaml设置图标https://blog.csdn.net/u014234260/article/details/73648649 winform程序控制面板中卸载显示图标https://blog.c ...
- VS C#程序打包覆盖安装不能更新的解决方法
最近写个小程序,打包覆盖安装更新时老是不起作用,还是原来的程序. 在网上四处查找,productcode和ersion都已经更改,removepreviousversions也设置成true了,可就是 ...
- WinForm程序打包教程
准备工作 1. 编写完成的WinForm程序 2. 安装部署项 VS2010中有一个自带的安装部署项目,叫:Visual Studio Installer ,通常称为:setup项目,是一个用于自定义 ...
- WinForm开发(6)——C#/winform程序打包部署时,如何把SQL数据库一起打包进去
打包数据库到安装程序中 方法1. 备份/恢复先备份数据库:backup database 数据库 to disk='c:\备份.bak' 将备份文件打包到安装程序中. 在第一次运行程序的时候,进行数据 ...
随机推荐
- OO Unit 2 电梯调度
目录 OO Unit2 博客作业 基于度量来分析⾃己的程序结构 复杂度分析 架构分析 改进和重构 发现过的BUG 简化问题 多线程初探 OO Unit2 博客作业 基于度量来分析⾃己的程序结构 自认为 ...
- react.JS基础
1.ReactDOM.render() React.render 是 React 的最基本方法,用于将模板转为 HTML 语言,并插入指定的 DOM 节点. <!DOCTYPE html> ...
- sqlserver 评估过期
解决:重新打开安装中心->维护-->版本升级 ,重新输入序列号 即可 sqlserver2008企业级序列号:JD8Y6-HQG69-P9H84-XDTPG-34MBB
- over(partition by..) 的运用(转)
oracle的分析函数over 及开窗函数一:分析函数overOracle从8.1.6开始提供分析函数,分析函数用于计算基于组的某种聚合值,它和聚合函数的不同之处是对于每个组返回多行,而聚合函数对于每 ...
- node.js 递归复制文件夹(附带文件过滤功能)
1.简介: 很简单,写了一个node操作文件的小脚本,主要实现对目标文件夹中内容的复制.还顺带一个按照文件夹或者文件名过滤的功能. 2.应用场景 适合基于 node 环境的项目,项目打包的时候,配合 ...
- Reactjs组件中的方法为什么绑定this?
前言:Reactjs中的定义的方法其实是基于实例的原型方法:es6默认严格模式 问题:在Reactjs组件中写入以下代码,那么执行结果会是什么呢? ··· 结果是这样的: 对的,你没看错,不是do ...
- JS基础整理
使用JS的三种方式 1.直接在html标签中,使用事件属性,调用js代码 <button onclick="alert('弹框')">弹框!</button> ...
- Java中的读写锁
一.读写锁 1.初识读写锁 a)Java中的锁——Lock和synchronized中介绍的ReentrantLock和synchronized基本上都是排它锁,意味着这些锁在同一时刻只允许一个线程进 ...
- Python程序里的注释和#号
Python程序里的注释是很重要的.它们可以用自然语言告诉你某段代码的功能是什么.在你想要临时移除一段代码时,你还可以用注解的方式将这段代码临时禁用.接下来的练习将让你学会注释 : # A comme ...
- [Swift]LeetCode567. 字符串的排列 | Permutation in String
Given two strings s1 and s2, write a function to return true if s2 contains the permutation of s1. I ...