我正在开发一个项目,该项目接受来自反编译MSI的Wix数据,并合并从Wise for Windows Installer导出的源文件路径表。我遇到的唯一问题是Wix正在寻找合并模块中包含的文件的目录(我认为)。我想检查丢失的文件是否在合并模块中,然后给Wix使用该路径。 BIG的问题是我需要在程序运行时动态执行此操作。 I.E.打开MSM并检查其中是否存在文件。这可能吗?如果是这样的话,任何可能给予的帮助,指导或希望都是无价的!提前谢谢!
EDIT :: 我应该补充一点,我正在使用.NET 3.5 SP1在C#中编写这个程序。
答案 0 :(得分:1)
可以使用部署工具基础(也称为“DTF”)库检查Windows Installer数据库(例如msm和msi文件)。这些库是Windows安装程序SDK的托管包装器。它们是wix project的一部分。
如果安装了wix 3.0,则可以在C:\program files\Windows Installer XML v3\sdk
中找到DTF程序集。
可以在文件C:\Program Files\Windows Installer XML v3\doc\
和dtf.chm
的{{1}}中找到该文档。