Answers:
Sysinternal的“进程”监视器可能在这里派上用场。尽管它可能太冗长,但您可以过滤掉其他进程并进行调整,直到最适合您为止。启动并扫描,然后开始安装并完成安装。
http://technet.microsoft.com/zh-cn/sysinternals/bb896645.aspx
可能还有其他针对发布的二进制安装的免费解决方案,但我不知道它们。
快速更新
我同意Evan的观点,至少对于注册表而言,如果过于冗长,则可能需要在安装之前和之后运行导出。Windows 2003支持工具带有windiff.exe(用于查找注册表中的差异-两个.reg文件之间的古老收藏)。
您想做“穷人的快照”。在为带有WIX的第三方软件构建自己的MSI时,我经常这样做。
对于您要执行的操作,Process Monitor可能太冗长了。您可以尝试使用以下方法制作注册表的“快照”:
REGEDIT /E BEFORE.REG
然后再进行一次比较,以便您进行比较。
对于文件系统,我使用了免费软件实用程序“ FileList ”来生成文件系统的“之前”和“之后”快照。
现有文件中的修改存在问题。您可能需要拍摄一个初始快照,找到已修改的文件,然后回滚(我通常使用VM和内置的磁盘快照功能进行回滚),并对每个文件进行“之前”快照。您知道将要进行修改以与“之后”版本进行比较。
请记住,捕获更改与捕获安装程序的逻辑不是一回事。在可能的情况下,最好对安装程序进行逆向工程,而不是仅尝试捕获什么更改。由于快照计算机的配置情况,您可能会错过看不到的细微差别。
Windows 2000 Server随附的旧版WinInstall 2003 LE做得相当不错,可以生成这些类型的快照以供参考,但是它生成的MSI非常糟糕。(如上所述,我放弃了使用它,而是开始自己“手动”制作快照。)