Installation 逆向工程安装程序

Installation 逆向工程安装程序,installation,windows-installer,reverse-engineering,Installation,Windows Installer,Reverse Engineering,有人有这样做的经验吗 具体来说,我想知道当我运行MSI时,是否有任何注册表项正在被写入,以及哪些文件将被放在哪里 当我运行msiexec进程时,我想用它来看看它在做什么,但我只是想在这里运行它,看看是否有人有更好的方法。有点生疏,但这里有一些(可能)有用的指针 有一个名为的工具,可以用来编辑MSI文件 还有,现在被称为其他东西,我不确定你能用这个试用版做什么,它肯定有能力编辑MSI文件 我本来打算单独推荐FileMon和RegMon,但我刚刚看到它们实际上已经被合并到ProcMon中,这显示了我

有人有这样做的经验吗

具体来说,我想知道当我运行MSI时,是否有任何注册表项正在被写入,以及哪些文件将被放在哪里


当我运行msiexec进程时,我想用它来看看它在做什么,但我只是想在这里运行它,看看是否有人有更好的方法。

有点生疏,但这里有一些(可能)有用的指针

有一个名为的工具,可以用来编辑MSI文件

还有,现在被称为其他东西,我不确定你能用这个试用版做什么,它肯定有能力编辑MSI文件


我本来打算单独推荐FileMon和RegMon,但我刚刚看到它们实际上已经被合并到ProcMon中,这显示了我是多么落后于时代:)

理想情况下,安装程序作者只使用注册表和COM表,因此很容易使用Orca查看正在执行的操作。然而,许多安装程序的作者产生的安装少于idea。在这些情况下,我使用InstallWatch在之前和之后对注册表进行快照,以产生差异


您将看到机器上运行的进程产生的其他线路噪音,但您将学会根据经验过滤这些噪音。(例如,安装没有更改加密种子或MRU和外壳)

Orca看起来非常有趣。真不敢相信我以前从没听说过。我会玩一玩的。是的,这就是WindowsInstaller背后的要点。使其声明性而非强制性,以便系统管理员可以看到它在做什么,并在需要时调整它以符合他们的意愿。对于文件,应该可以说msiexec/a foo.msi TARGETDIR=C:\EXTRACT\但是,如果他们使用进程外自定义操作,则不会表达它。还有其他工具,如InControl智能驭享和InstallShield Repackager,可以捕获这些信息。我们通常认为使用这些工具来捕获旧式/预装MSI的功能,因为一个好的MSI应该是声明性的。