exe转msi
1、起因
由于域推送只支持msi安装包,而很多常用的工具比如Adobe Flash Player.exe、SilverLight.exe都是exe格式的,于是引出要将exe转成silent msi的工作。
2、尝试1
首先是exe2msi。这个小工具的优点是简单方便,只要exe本身支持静默命令行(比如adobeFlashPlayer11.exe /install、silverlight.exe /q)之类的即可。缺点是很多安装包并不支持静默参数。
3、尝试2
然后是Advanced Installer,目前的版本是10.6。AdvInst提供2种方式:1)msi from exe,但这种方式只是用一个外部的msi包裹exe,如果exe不支持静默,仍然会停下来等待用户的交互。2)Repackage Installation,这种方式可以重新打包,原理是在安装前记录一下系统的镜像、安装后再记录一个snapshot,对比2个镜像找出安装前后的所有变化,包括文件、文件夹、注册表、服务……的增删改。因此尽量少开软件、尽量在干净的系统上跑,这样出来的msi会比较靠谱。操作如下:
- 新建->导入->Repackage Installation
- 将此计算机上的应用程序重新打包->选择Fiddler1Setup.exe->关键是“当前配置文件”,点编辑
- “文件类型过滤”里勾上“不用扩展名排除文件”->文件和文件夹过滤”里“新建文件夹”把c:\program files\加上
- 也可以添加需要的注册表项,这里的配置关系到后面是否能抓取到你想要的文件,要仔细选择!
- 录制完成后,点击“查看重新封装器统计”,弹出窗口显示刚才到底收集到哪些变化,一般来说,至少Added Files应该大于0,如果只有folder,没有files,很有可能是刚才的配置里把需要的文件过滤掉了,重新配置即可。
- 把结果导入之后,1)安装参数->限于基本的用户界面(简单进度和错误处理)勾上,这样会以静默方式安装;2)在文件列表和注册里去掉不需要的,比较我本机生成时,就抓到了杀毒软件trend和其他后台进程的Log文件,删掉即可。
- 最后点击保存,生成msi即可。
4、其他推送工具
后来才知道,还有不少推送工具是可以推exe的,比如微软的SCCM(system center configuration manager)和VRV之类的监控软件。当然,安装包本身还是要支持静默的,一般正规的安装包都会以各种方式支持静默,少数不支持的,就需要用AdvInst之类的工具重新打包。
exe转msi的更多相关文章
- 使用AdvinceInstaller把exe或者msi重新包装成为msi静默安装程序
最近在学习installShelled打包.net做的软件,其中mysql数据库的静默安装脚本不会写,本人新手勿喷.在不会写脚本的方式下,偶然间看见了这个AdvinceInstaller可以吧.exe ...
- VS安装程序制作之MSI/EXE
MSI文件是Windows Installer的数据包,它实际上是一个数据库,包含安装一种产品所需要的信息和在很多安装情形下安装(和卸载)程序所需的指令和数据.MSI文件将程序的组成文件与功能关联起来 ...
- 什么是MSI文件?
当你双击`msi`文件时,就会调用`window.installer`程序,接下来就和安装其他程序一样了,但是你要确保你的`window.installer`服务是开启的,你可以在控制面板下的服务中找 ...
- 使用msiexec.exe绕过应用程序白名单(多种方法)
0x00 前言 在我们之前的文章中,我们讨论了“Windows Applocker策略 - 初学者指南”,因为它们为应用程序控制策略定义了AppLocker规则,以及如何使用它们.但今天您将学习如何绕 ...
- 使用VS进行打包程序解决生成两个文件的问题(压缩后只有一个exe)
使用VS打包创建setup相信大家都挺熟的了,不熟的话网上也有很多,就不做介绍了,现在给大家写下怎么将生成的那些文件夹以及setup.exe和.msi 文件打包成一个exe 我们这里使用的是Winra ...
- mybatis-generator-gui如何打包成exe
快速阅读: 用wix和inno setup把mybatis-generator-gui 打包成exe和安装文件. 以后使用的时候方便,不用每次打开eclipse运行. 使用inno setup 5 ...
- ASP.net MVC 文件下载的几种方法(欢迎讨论)
在ASP.net MVC 中有几种下载文件的方法 前提:要下载的文件必须是在服务器目录中的,至于不在web项目server目录中的文件下载我不知道,但是还挺想了解的. 第一种:最简单的超链接方法,&l ...
- 他山之石——vs2013 安装与部署及程序打包
C#打包需要这个:InstallShield 2013 Limited Edition for Visual Studio .下载地址: InstallShield 2013 Limited Edi ...
- 【转载】VS2012的打包方法
上篇博客把收费系统的总体设计进行了一遍讲解,讲解的同时掺杂了些有关.NET编译机制的总结.程序编写测试完成后接下来我们要做的是打包部署程序,但VS2012让人心痛的是没有了打包工具.不知道出于什么原因 ...
随机推荐
- POJ 2484 A Funny Game(神题!)
一开始看这道博弈题的时候我就用很常规的思路去分析了,首先先手取1或者2个coin后都会使剩下的coin变成线性排列的长条,然后无论双方如何操作都是把该线条分解为若干个子线条而已,即分解为若干个子游戏而 ...
- 转:一个Sqrt函数引发的血案
转自:http://www.cnblogs.com/pkuoliver/archive/2010/10/06/1844725.html 源码下载地址:http://diducoder.com/sotr ...
- 转!!深入理解 Session 与 Cookie
摘要 Session 与 Cookie 不管是对 Java Web 的初学者还是熟练使用者来说都是一个令人头疼的问题.在初入职场时恐怕很多程序员在面试的时候都被问到过这个问题.其实这个问题回答起来既简 ...
- hiho_1079_离散化
题目 在长度为L的宣传栏上张贴N张海报,将宣传栏分为L个长度为1的单位,海报长度为整数,且高度和宣传栏相同,左右边界和宣传栏单位之间缝隙重合(即海报总是跨越整数个单位).后贴的海报可能会覆盖之前贴的海 ...
- CSS三种定位机制
标准文档流 块级元素撑满整个页面div,ul,li,dl,dt,p 行级元素可以一行显示多个span,strong,img,input大部分 一般不设置盒子的高度,另其自动调整 margin属性的au ...
- Windows 位图
目录 第1章简介 1 1.1 DFB 1 1.2 DDB 1 1.3 DIB 2 第2章相关API 3 2.1 创建 3 2.1.1 CreateCompatibl ...
- Java substring() 方法
Java String类 substring() 方法返回字符串的子字符串. 语法 public String substring(int beginIndex) 或 public String su ...
- robotframework笔记4
机器人框架概述 机器人框架是一个通用的开源的自动化测试框架 验收测试和验收测试驱动开发(ATDD).它具有易于使用的表格的测试数据 语法采用关键字驱动 测试方法.其检测能力可以通过测试库 用Pyt ...
- Tomcat卸载
1.以管理员身份打开cmd,执行以下命令: C:Windows\system32>cd C:\Program Files\apache-tomcat-7.0.69\bin C:\Program ...
- edm注意细节
Email Direct Marketing不要有js,css也放在html里面不能有热区,所有的border要设置为0在浏览器里面邮件发送可能会歪掉,可以测试接受后是否歪掉 有点时候表格会有细缝等等 ...