安装程序修改了哪些DLL和注册表项?

时间:2013-07-16 14:47:00

标签: c++ dll windows-xp registry windows-installer

我正在尝试在Windows XP上调试C ++应用程序,当我启动调试模式时,在完成所有初始化后,主窗口将不会显示。但是,它适用于W7。

所以我检查了我可用于应用程序的msi安装程序,安装应用程序后,问题似乎消失了。我卸载了应用程序,它仍然有用。

我需要知道安装程序修改了哪些注册表项和DLL,以便我可以识别问题。有没有办法做到这一点?

2 个答案:

答案 0 :(得分:3)

是。 Microsoft的Process Monitor是免费的,它跟踪程序所做的每个文件I / O和注册表读取/写入,包括安装程序。但是,可能会有许多这样的更改。

由于procmon在运行时监视进程,因此您必须再次运行安装程序。

答案 1 :(得分:1)

问题解决了。问题是该应用程序将尝试获取对空对象的锁定,失败,然后释放锁定。因此,当下一次获取时,应用程序将崩溃。奇怪的是,相同的代码在Windows 7上运行得很好,但我的猜测是Win API在锁定部分有一些改进。

进程监视器本来是有用的,但是安装程序已经有太多的线程和注册表更改才能跟进。 快照将像 Process Monitor 诊断日志记录一样复杂。

谢谢你的帮助,伙计们:)