我想验证合并模块.ism(二进制格式)中是否已存在某些exe文件。有没有使用InstallShield执行此操作的方法?
答案 0 :(得分:0)
* .ism文件实际上是一个 MSI文件,其扩展名已更改。 MSI文件又是存储为COM结构存储文件的SQL数据库 - 单个文件中的文件系统,具有各种内容的文件流。这与Office文档中使用的格式相同。
您可以使用Windows SDK中的Orca查看MSI文件:http://www.hass.de/content/how-install-microsoft-orca
答案 1 :(得分:0)
Windows Installer XML(WiX)部署工具基础(DTF)具有可用的OpenPackage类,可以公开FindFiles()方法。这应该很容易查询EXE。只是意识到作为一个合并模块,你不会知道MSI一般决定的完整安装路径。
答案 2 :(得分:0)
克里斯的两个建议都应该可以正常使用,就像使用Orca一样。但它让我觉得使用名为Merge Module Finder的工具可能会更简单。这完全取决于你真正想做的事情?查找合并模块中已有的文件?调查Installshield文件中的合并模块是什么?目前尚不清楚你想要做什么。
虽然有时候有点笨拙(我认为作者没有为最新版本的Windows更新它),但它会帮助你以交互方式在一堆合并模块中查找文件。您还可以搜索注册表值。这是一个截图: