WindowsInstaller如何改变安装文件位置?

王朝知道·作者佚名  2010-04-30
窄屏简体版  字體: |||超大  
 
分類: 電腦/網絡 >> 軟件
 
問題描述:

WindowsInstaller如何改变安装文件位置?

因为软件安装的选项很多,安装时终端会根据需要定制安装。因此无法使用网络上常看到的“系统快照”的方法简单制作安装程序。

我在修改Windows Installer制作安装文件时遇到了奇怪的问题,使用MS自己的CABARC制作的DATA1.CAB压缩文件,在使用MS自己的.MSI安装时,竟然有许多文件报告无法找到。用各种工具打开压缩的CAB文件均可看到那些文件都是存在的,和msi文件中描述也是相同的,使用CABARC的LZX,MSZIP压缩均不能解决。看到网上的英文文章说,微软的压缩算法经历过许多改变,其中也含有错误。不知道是不是这个原因让我的CAB总是无法被安装程序完全接受。

后来转念一想,不如将CAB文件全部不压缩,而是展开到一个DATA名字的目录下,让安装程序直接去复制,不是就绕过可恶的BUG了吗?可是,由于是第一次接触修改制作安装程序,手里资料可以说是空白。

不知道哪个DX手里有可以学习的资料,能够让我通过orca修改MSI来完成路径指定的工作?

这也许就是一层窗户纸,可是却困扰了我3天了。:(

參考答案:

关键原因是MSI的Files里Sequence的问题。

MSI的Files里Sequence指定了安装文件的顺序,这个顺序和CAB里压缩的文件顺序要一致,否则,就会发生找不到文件的现象。

如何按照指定顺序压缩文件呢?

需要使用CABARC及制作DDF配置文件合作创建CAB文件。

cabarc是可以从微软的网站上下载到的(cabsdk)。

ddf文件包含配置信息和文件列表:

.OPTION EXPLICIT

.Set CompressionType=MSZIP

.Set UniqueFiles="off"

.Set Cabinet=on

.Set MaxDiskSize=CDROM

.Set MaxCabinetSize=0

.Set FolderFileCountThreshold=0

.Set DiskDirectory1=d:\cab

.Set CabinetName1=EBD.cab

;FileList

D:\etiger\tools\ATTRIB.EXE

D:\etiger\tools\CHKDSK.EXE

小贴士:① 若网友所发内容与教科书相悖,请以教科书为准;② 若网友所发内容与科学常识、官方权威机构相悖,请以后者为准;③ 若网友所发内容不正确或者违背公序良俗,右下举报/纠错。
 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
 
 
© 2005- 王朝網路 版權所有 導航