.net平台 通过Windows installer 打包和部署实例操作
Windows installer 打包和部署
1.新建项目。
打开VS,新建项目->其他项目类型->安装和部署(Visual Studio Installer)。
注:若VS2013 或者 VS2015 没有打包和部署模块。通过https://marketplace.visualstudio.com/搜索Microsoft Visual Studio 2013 Installer Projects或者Microsoft Visual Studio 2015 Installer Projects 与VS版本对应下载并安装。
2.添加打包项目。
将需要打包的项目添加到该解决方案中。(若不添加,则无法为步骤4添加项目输出)
3.添加打包项目的文件系统。
右键【添加】选择【文件系统】,如下图所示。
将需要打包项目的bin文件拷贝到 Application Folder目录下。
注:bin文件下可能包含文件夹,通过右键Add File过程繁琐,可以直接通过复制将整个目录进行拷贝。
4.添加项目输入。
右键文件夹->Add->项目输出。(注:右键主程序的上级目录的文件夹,而不一定是Application Folder)
5.创建桌面快捷方式。
右键选择该项目的启动程序(或者主输出),选择Create Shortcut to ***。将创建的快捷方式拖至User’s Desktop目录下。
改变快捷方式图标。
6.创建卸载程序。
右键文件夹根目录->Add->File,然后将"C:\Windows\System32" 下面的“msiexec.exe”文件给添加进来。可以再给msiexec.exe创建一个快捷方式命名为”UnInstall.exe“。将安装程序属性中的ProductCode复制给卸载快捷方式(UnInstall.exe)的Arguments属性,需在ProductCode的值前插入”/X ”。(X之后有空格) 卸载程序图标设置与上面相同。
7.添加注册表信息。
在HKEY_CLASSES_ROOT目录下依次创建”项目名”->”Shell”->”Open”->”command”四层目录关系,如下图所示。右键command->New->字符串值。将新建的字符串值的Name清空(还原为default值,可覆盖注册表中的默认值),将Value值设置为”[TARGETDIR]\+文件夹名称+启动项名称”+空格+”%1”。”%1”为参数,可以为其他值。例如该用例Value值为”[TARGETDIR]\MaWanClient\MaWanClient.exe” “%1”。(注:[TARGETDIR]为大写)
8.其他注意事项。
(1)注册表卸载时自动删除。右键选择在【HKEY_CLASSES_ROOT】目录下创建的文件->【属性窗口】,将DeleteAtUninstall属性改为True。
(2)X86与X64兼容性问题。打包过程中可能遇到待打包项目与打包程序执行平台不一致问题,可以将解决方案【属性】中的活动配置改为”Debug|Any CPU”
(3)HTML调用测试。HTML代码如下:
<html>
<head></head>
<body>
<a href="MaWanClient:0">启动</a>
</body>
</html>
MaWanClient 与注册表中的根目录名称一致,”0”为传入参数。通过注册表的信息即可调用系统中的安装完成的软件。
(4)打包程序信息设置。选择安装程序属性即可修改相关的作者、产品名称、版本号等相关信息。
.net平台 通过Windows installer 打包和部署实例操作的更多相关文章
- 安全模式下卸载windows installer打包的软件(转)
安全模式下卸载windows installer打包的软件 起因: 主机系统MAC,虚拟软件Parallels Desktop, 虚拟系统 Win 7. 今天在虚拟机WIN7里面安装了某个软件导致重启 ...
- Winform程序部署方式总结二——Windows Installer发布
针对Winform程序,介绍两种常用打包方式:ClickOnce和Windows Installer 应用程序如下: 二.Windows Installer发布 1.新建项目 创建后视图 第一步: 应 ...
- SNF开发平台WinForm之八-自动升级程序部署使用说明-SNF快速开发平台3.3-Spring.Net.Framework
9.1运行效果: 9.2开发实现: 1.首先配置服务器端,把“SNFAutoUpdate2.0\服务器端部署“目录按网站程序进行发布到IIS服务器上. 2.粘贴语句,生成程序 需要调用的应用程序的Lo ...
- springboot测试、打包、部署
本文使用<springboot集成mybatis(一)>项目,依次介绍springboot测试.打包.部署. 大多数朋友是做后端的,也就是为其他系统或者前端UI提供Rest API服务. ...
- 机房收费系统vb.net之打包与部署(二)
版权声明:本文为博主原创文章.未经博主同意不得转载. https://blog.csdn.net/wangdan199112/article/details/28286365 ...
- flask在windows上用mod_wsgi部署
flask在windows上用mod_wsgi部署也是折腾了不少时间,下面就总结下. 首先下载Apache httpd,我认为Apache Hans比较好: 一般这种情况下,你的python环境已经安 ...
- 【工具】清理Windows Installer冗余文件(支持64位NT6.x系统)
样子: 支持系统: Windows NT 5.x/6.x 32及64位所有系统.需.net framework 2.0运行环境 功能: 清理上述系统中冗余的Windows Installer补丁文件. ...
- (转)使用 Advanced Installer 打包 一键安装Web应用程序
使用 Advanced Installer 打包 一键安装Web应用程序 安装预览: 资源下载: 示例安装包 操作流程: 1.新建Asp.net Application. 2.设置 ...
- Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案
原文:Visual Studio Installer打包后生成的安装文件每次执行都需要重新安装C++ 2010运行库(x86)的解决方案 如果你是用Visual Studio自带的打包项目打包了一个I ...
随机推荐
- Python学习,第一课 - 基础学习
前言. 本内容全部以python3所讲 一.Python安装 windows 1.下载安装包 https://www.python.org/downloads/ 2.安装 默认安装路径:C:\pyth ...
- 创建dynamics CRM client-side (十二) - HTML Web Resource
HTML Web Resource是我们经常使用的一个功能. 第一步, 我们先创建好一个HTML. 接下来,我们要在web resource中创建新的html web resource. 我们在tex ...
- CSS-02-css的三种基础选择器
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title> ...
- 小白学Java:I/O流
目录 小白学Java:I/O流 基本分类 发展史 文件字符流 输出的基本结构 流中的异常处理 异常处理新方式 读取的基本结构 运用输入与输出 文件字节流 缓冲流 字符缓冲流 装饰设计模式 转换流(适配 ...
- Ubuntu16.04-Server固定静态IP
1. 查看IP信息-ifconfig 2.修改配置文件---sudo vim /etc/network/interfaces 修改为静态ip 配置说明: auto ens33:使用的网络接口 ifa ...
- Nginx配置及负载均衡
转载:http://www.cnblogs.com/jingmoxukong/p/5945200.html nginx简易教程 目录 Nginx 概述 安装与使用 nginx 配置实战 参 ...
- kubernetes容器端口设置的坑
1.使用dockerhub上面的镜像的时候,先到dockerhub上看镜像的相关信息. 2.不能随便修改容器应用的镜像,会出问题.
- css:html-font-size
font-family:"Helvetica Neue",Helvetica,Arial,sans-serif
- gcc 相关总结 动态链接库
#include < >与#include " " #include < >:直接到系统指定的目录中去找头文件. #include " " ...
- CentOS8 上安装Docker
从 2017 年 3 月开始 docker 在原来的基础上分为两个分支版本: Docker CE 和 Docker EE.Docker CE 即社区免费版,Docker EE 即企业版,强调安全,但需 ...