是否可以检测安装文件(msi或exe)中是否包含帮助文件?

时间:2011-04-15 15:33:44

标签: installation inno-setup installshield

我想知道如何检测Windows平台应用程序(msi或exe)的安装文件中是否包含帮助文件。是否有任何方法可以在不先安装软件的情况下获取此信息?

当然,设置文件可以由许多设置工具创建,例如innosetup,installshield等。所以我想知道是否有一些通用的方法来解决这个问题。

2 个答案:

答案 0 :(得分:1)

对于基于MSI的安装,这将非常简单。例如,您可以通过C#使用Microsoft.Deployment.WindowsInstaller interop将MSI作为InstallPackageClass打开,然后访问它的Files集合以查看它是否包含您关注的文件。

对于基于非MSI的安装,没有通用的方法,在大多数情况下,没有办法。看,这就是MSI的重点:拥有一个富含元数据的基于标准的软件包,以便能够看到它正在做什么。当您执行某些专有脚本驱动的安装程序时,您将失去这种开放性。

答案 1 :(得分:0)

如果是MSI文件,请使用Orca打开它,然后您可以查看文件名。

对于它们两者,您应该能够进行管理安装,这将提取文件,但不能注册任何内容。根据exe的来源,进行管理安装更改,因为每个供应商(installshield,innosetup等)都有自己的方式来运行管理安装。

对于MSI,它只是

msiexec /a <msi_filename>

对于exe,您必须查找如何传递/ a参数。