Veritas创建MSI文件<?xml:namespace prefix = o ns = "urn:schemas-microsoft-com:office:office" />
       在之前的博文中,我们介绍了组策略中可以使用发布和指派两种手段进行软件分发。我们举例发布的都是MSI格式的软件,但很多小型的工具软件并没有提供MSI格式的安装程序,大多只有EXE格式的安装文件。众所周知,组策略发布并不支持EXE格式的安装程序,那我们应该如何处理这些工具软件呢?今天我们要为大家介绍的就是如何把这些EXE格式的安装程序转换为MSI格式的文件,格式转换之后,我们就可以顺利地对这些MSI格式的工具进行发布或指派了。
       MSI文件是Windows Installer的数据包,它其实是一个数据库,包括了产品安装或卸载所需要的各种参数。这些参数中比较重要的就是软件安装过程中对文件系统以及注册表的修改,获得了这些参数,就可以创建相关的MSI文件了。那么,我们如何才能获得这些参数呢?基本的思路是,先用特定软件对一个干净的操作系统做一个快照,记录一下当前系统的文件系统和注册表。然后开始安装工具软件,安装完工具软件后再对操作系统做一次快照。把安装软件前后的快照内容进行对比,就知道工具软件在安装过程中对文件系统和注册表进行了哪些修改,进而可以创建出工具软件的MSI文件。
       可以完成MSI文件制作的特定软件很多,例如我们在APP-V系列博文中曾经介绍过,序列化虚拟应用程序时就可以生成MSI文件。但APP-V的环境搭建过于复杂,今天我们为大家介绍一款入门级的MSI制作工具-Veritas。这款工具就集成在Windows Server 2000的安装光盘上,注意,是Win2000的安装光盘,不是Win2003的安装光盘。我们为大家实际举个例子,用SWIADMLE制作Winrar的MSI文件。
       找一台干净的系统,还没有安装Winrar软件。我们在计算机上打开Win2000安装光盘。如图1所示,在安装光盘的Valueadd\3rdparty\mgmt\winstle目录下,我们看到了SWIADMLE.MSI文件,双击文件开始安装。
<?xml:namespace prefix = v ns = "urn:schemas-microsoft-com:vml" />
图1
       如图2所示,SWIADMLE的安装过程非常简单,基本没有任何交互过程,很快安装完毕。
图2
       安装完SWIADMLE后,如图3所示,依次点击 开始-程序-VERITAS Software-Veritas Discover,准备对当前系统先做一次快照。
图3
       如图4所示,Veritas Discover开始执行,Veritas的界面非常粗糙,不敢恭维,点击“Next”继续。
图4
       如图5所示,我们需要填写一些参数。本次任务针对的应用程序是Winrar,生成的文件会存储在E盘的根目录下,文件名是winrar.msi。
图5
       如图6所示,我们要选择一个盘符用于存储建立快照时所产生的临时文件,我们选择把临时文件存放在E盘。
图6
       如图7所示,我们要选择对哪个磁盘建立快照。考虑到安装Winrar软件,只会影响到C盘的文件系统,因此我们只选择对C盘建立快照。
图7
       如图8所示,我们可以选择把C盘的哪些文件夹排除在快照之外,例如安装Winrar并不影响Inetpub目录,因此可以考虑把Inetpub目录排除在快照之外。如果Winrar安装时修改的注册表项较多,还可以勾选“Enhanced Registry Scan”以进行增强的注册表扫描。
图8
       如图9所示,Veritas开始对当前系统创建快照,记录当前的文件系统和注册表参数。
图9
       如图10所示,安装工具软件之前的快照已经创建完毕,点击“确定”按钮,Veritas将提示我们安装Winrar工具软件。
图10
       如图11所示,在Veritas的提示下,我们选定Winrar的安装程序,准备安装Winrar。
图11
       如图12所示,Winrar开始安装,安装过程不再赘述。
图12
       安装完Winrar后,文件系统和注册表发生了变化。再次运行Veritas Discover,如图13所示,这次我们要创建的是安装软件之后的系统快照。
图13
       第二次快照非常简单,如图14所示,Veritas自动把两次快照进行对比,就在E盘的根目录下生成了Winrar.msi文件。经过测试,Winrar.msi可以正常安装,用于组策略发布,大家可以实验测试一下。根据使用经验,一般的小工具用Veritas处理一下还是没有问题的。
图14

转载于:https://blog.51cto.com/yuelei/348439

用Veritas制作MSI文件,Active Directory系列之二十四相关推荐

  1. 组策略轻松实现软件发布,Active Directory系列之二十二

    组策略轻松实现软件发布          在IT工程师的运维工作中,有很多没有技术含量的事务性操作是很令人头疼的,例如为客户机安装软件.有些朋友看到这里估计会很不以为然,想我等IT专业人士,纵横江湖多 ...

  2. Docker系列(二十四)——Docker实例六Docker安装Redis实例

    < Docker实例三Docker安装Redis实例 > 前言 在前面一篇文章种,完成了 < Docker安装MongoDB实例 >,本篇将继续镜像安装教程,并完成Docker ...

  3. Active Directory系列之二:部署第一个域

    部署第一个域 在上篇博文中我们介绍了部署域的意义,今天我们来部署第一个域.一般情况下,域中有三种计算机,一种是域控制器,域控制器上存储着Active Directory:一种是成员服务器,负责提供邮件 ...

  4. 《sed的流艺术之四》-linux命令五分钟系列之二十四

    [正文开始] 上文接<sed的流艺术之三>-linux命令五分钟系列之二十三 例十 如果设定了很多-e的command,它们的执行顺序是怎样的呢? [rocrocket@rocrocket ...

  5. 网络安全系列之二十四 XSS跨站脚本攻击2

    在本篇博文中将演示存储型的跨站,这也是最常用的XSS攻击方式. 实验环境采用NPMserv搭建,软件下载地址:http://down.51cto.com/data/1886128.这里要用到其中的第二 ...

  6. .NET基础示例系列之二十四:家谱软件(1)

    最近忙于摆弄Oracle方面的东西,C#的功课落下了不少,趁着还没手生,把前段时间断断续续写的WPF家谱小软件拿出来整理一下,好记性不如烂笔头,先截两张图放着,后续再写写中间一些问题.已解决的是: 1 ...

  7. MATLAB可视化实战系列(二十四)-三维可视化如何利用圆锥图显示向量场?

    前言 在物理学中,我们学习了矢量,知道了磁力线等矢量图.如何画出优美的矢量场图呢?科学计算软件matlab可以很容易地绘制出矢量场图.下面跟随博主一起来看下matlab高级可视化内容,如何利用圆锥图显 ...

  8. MATLAB实战系列(二十四)-MATLAB粒子群(PSO)优化算法在电力系统中的应用程序集合

    前言 关于本文的详细代码参见: 粒子群算法多场景应用程序matlab源代码 有需要的小伙伴可自行订阅. PSO算法就是模拟一群鸟寻找食物的过程,每个鸟就是PSO中的粒子,也就是我们需要求解问题的可能解 ...

  9. MATLAB实战系列(二十四)-大规模邻域搜索(LNS)求解带时间窗的车辆路径问题(VRPTW)(附matlab源代码)

    前言 大规模邻域搜索算法(后文统一称为LNS)用MATLAB编写文中的提出的LNS求解带时间窗的车辆路径问题(后文统一称为VRPTW问题)的代码. 本文会带大家详细梳理LNS的基本流程,其实说白了LN ...

最新文章

  1. 我能想到最浪漫的七夕,就是让AI唱一首“我爱你”!
  2. 扎心!程序员旅行却只能紧紧抱着电脑加班?
  3. cocos2dx多线程以及线程同步 与 cocos2dx内存管理与多线程问题
  4. Delphi编程技术简介
  5. vilatile 深入理解java虚拟机_《深入理解Java虚拟机》笔记 第十二章 volatile变量
  6. ngnix的upstream模块配置详解
  7. Matrix Computations 1
  8. C++设计模式-命令模式
  9. 智能听音公司Soundhawk获得550万美元融资,通过降噪算法让用户听到真正想听的声音
  10. git pull 出错,error: Your local changes to the following files would be overwritten by merge...
  11. Sublime 编译汇编程序
  12. android studio 读取短信
  13. 留学生的英文期刊论文怎么写?
  14. 数据库删除数据 truncate 与 delete
  15. 2020-12-29
  16. 0920-TCP断线重连 reconnect
  17. 浪潮财务软件 系统表预检查: 对象 ID X。无法使用闩锁类型 SH 读取并闩锁页 。由于不可修复的错误,CHECK 语句已终止。
  18. 前端实现电子签名(vue组件)
  19. 30_ElasticSearch IK分词器配置文件 以及自定义词库
  20. P17 五子棋的实现4 悔棋功能

热门文章

  1. BZOJ 1199: [HNOI2005]汤姆的游戏 计算几何暴力
  2. 使用代码为TextView设置drawableLeft
  3. SQLServer访问Oracle查询性能问题解决
  4. 11-13SQLserver基础--数据库之事务
  5. HBase与关系数据库
  6. SQL 审核系统体验
  7. Maximo中调用XFire客户端的实现—Weblogic中间件
  8. 对XML文件进行的添加、删除、修改、查询操作。
  9. python 打开网页自动播放视频_html5的video标签自动播放
  10. 如何有效地报告Bug