如何知道一个程序在做什么?

有没有办法知道什么是可执行文件已经完成(哪些文件已经复制,在什么文件夹已经复制这些文件,什么密钥registry编辑等)?

我投赞成票的答案。 不过,我想补充一点, procmon几乎只是一个显示和绘制Windows实时注册表项( HKEY_PERFORMANCE_DATA )值的工具。 如果您想以编程方式监视某些内容,则只需编写代码即可自己查看和处理来自HKEY_PERFORMANCE_DATA相同注册表值。

Procmon是一个开始的好地方。

当然,不同的操作系统有不同的工具。 对于MS Windows,由Mark Russinovich和Bryce Cogswell提供的SysInternals软件包提供了大量的工具。

它具有实时的FileMonitor,DiskMonitor,ProcessMonitor,网络监视器和注册表监视器,以非常详细和可理解的方式显示信息。

你应该下载整个套件,因为它们是不同的程序。

http://technet.microsoft.com/en-us/sysinternals/bb842062

您可以使用sysinternals的实用程序(如ProcessMonitor) 。 有了它,你可以监视注册表,文件系统,网络访问等等(抱歉,我不记得所有的功能。)