【发布时间】:2013-05-17 10:51:36
【问题描述】:
我正在按照这些步骤从 MSI 中提取文件并对其进行编辑并保留它。但是当我安装新的 MSI 时,它无法在文件柜 (.cab) 中找到文件。
-
从 MSI 中提取 cab 文件
msidb -d "Setup.msi" -x Client.cab -
从 cab 文件中提取文件。
cabarc X Client.cab *.* C:\ClientExtract\ 编辑文件夹 C:\ClientExtract 中提取的文件
-
从修改后的文件创建一个新的 cab 文件
cabarc N Client.cab C:\ClientExtract\*.* -
从 Setup.msi 中删除现有的 cab
msidb -d "Setup.msi" -k Client.cab -
将新建的cab文件添加到msi
msidb -d "Setup.msi" -a Client.cab
现在,这个 MSI 文件没有被安装,它说一些文件没有找到。 当我只运行第 1、5 和 6 步时,MSI 运行顺畅。我相信问题出在无法维护文件夹结构的 cabarc.exe 上。
我们将不胜感激任何帮助或替代解决方案。 msi2xml 和 xml2msi 有效,但我不能使用它。
【问题讨论】:
-
我也试过了,但没有帮助
-
是的,我可以删除 cab 文件。我的意思是我删除了然后我创建了新的cabinet文件。
标签: c# windows windows-installer cab