在Windows上安装应用程序期间捕获所有更改

时间:2009-07-02 14:04:35

标签: windows configuration installation windows-installer

我需要监视并报告在安装软件程序期间所做的所有更改(添加的文件夹和目录,更改的权限,添加的注册表项)。任何人都可以建议一个能够做到这一点的工具吗?

谢谢,MagicAndi。

5 个答案:

答案 0 :(得分:3)

看起来这是question answered already on ServerFault的重复(我的不好!)。给出的答案是:

答案 1 :(得分:3)

  

注意:请参阅下面的其他答案。


如果你想创建一个 Wix设置,我想添加一个新答案,其中包含如何以最快的方式完成此任务的一些提示

我建议您使用 InstallRite (不再可用)软件来获取更改日志。此工具不允许您将捕获转换为MSI,但它为您提供了一个很好的更改日志(它确实包含一些垃圾)。 PictureTaker工具似乎已经重命名,现在是commercial - 它确实允许将捕获转换为MSI。

似乎有一个名为 可扩展智能打包器CE 的新捕获工具(链接已于2017年11月删除 - 目标网站已更改且看起来有点可疑)。我没有彻底测试过这个工具。

完成日志或捕获后,您可以通过2种“快速通道”方式转换为WIX:

  1. 使用 dark.exe WIX MSI反编译器(如果您已有MSI)
  2. 使用 heat.exe WIX收集器工具(为文件夹,注册表等自动生成WIX XML。)
  3. 如果你使用 dark.exe 工具,你应该得到一个完整的WIX XML文件然后你可以再次编译 - 但你应该清理一下(取出UI垃圾,然后链接)使用WIX的详细内置GUI等...)。

    使用 heat.exe 是更清洁的方式。您只需对文件夹运行heat.exe工具,它将为您创建WIX XML元素以安装这些文件。然后,您需要将它们与其他必需部分一起放在WIX源文件中。我可以为您提供一个基本的WIX“最小样本”来帮助您(我似乎无法在此处附加文件)。

答案 2 :(得分:2)

  

更新Stefan Kruger's comprehensive list of repackaging tools at installsite.org


您的问题有点开放,因为总体目标并不完全清楚:

  1. 应用程序重新打包:捕获所有更改,然后将其打包为可部署的包格式,例如MSI(或类似)。
  2. 报告/监控:只是想在安装过程中“看看会发生什么”。
  3. 对于应用程序重新打包,主要工具是 AdminStudio (由于法律问题,主要竞争对手“Wise InstallStudio”已从市场撤出,请参阅此处的明智部分:What installation product to use? InstallShield, WiX, Wise, Advanced Installer, etc)。

    AdminStudio具有非常全面的功能集和高昂的价格标签(以及学习曲线)。您可以尝试使用试用版进行重新打包,看看生成的MSI是否可用。如果不是,你可以通过dark.exe Wix工具相对容易地将它转换为Wix MSI。

    然后曾经有更多轻量级工具,例如 PictureTaker InstallRite ,我认为它们更适合“报告目的”但可用于创建MSI。 这两种工具似乎也已消失

    似乎有一个名为 Scalable Smart Packager CE 的新捕获工具(已删除断开的链接2018年1月 - 该工具已停止使用)。我没有彻底测试过这个工具。


    更新:我刚删除了一个到Scalable Smart Packager CE的断开链接(似乎已停止)。对于重新包装软件/工具,也许可以在installsite.org看到Stefan Kruger的综合列表。很难跟上所有这些有用但最终被弃用的工具。


    您可以使用此处建议的方法:Tracking file and registry changes,或者您可以尝试在 Windows 2000 Server CD 上找到旧版本的 WININSTALL LE \VALUEADD\3RDPARTY\MGMT\WINSTLE

    我相信Advanced Installer允许捕获,但我不确定您是否可以使用试用版导出正确的MSI文件(或根本不可能)。

答案 3 :(得分:0)

我曾多次使用Process Monitor来记录在服务器上安装COTS软件的影响。似乎总是这样做。

答案 4 :(得分:0)

有一个名为“sandboxie”的程序 安装后,您需要对其进行配置才能正常工作。 跑沙箱。将安装文件拖放到gui中并观察它是否尝试安装。 Sandboxie创建了所发生事件的日志。虽然它将所有exe-DLL-inf脚本和其他所有内容重定向到隔离文件中。 然后,SB GUI将文件结构布局到所有预期的安装位置。

任何下载我不太确定是合法的,现在可以通过SB的网络浏览器功能直接下载和执行。然后,我可以检查它,如果它是顽皮的话,它永远不会感染我的系统。

另一方面......

如果是在SB gui中执行的在线installer.exe,您现在可以获得构成安装程序包的所有内容的副本。将它全部放在USB上的文件中,使用notepad ++制作一个简单的autorun.inf和.bat文件,以创建自己的离线安装程序

希望这会有所帮助......

相关问题