如何获得正在修改注册表的进程的信息

我要用VC写一个程序,实现下面描述的功能:

监视注册表的某个键值,当发现这个键值被改变时,要获得是哪个进程改变的这个值。

要获得进程名!

有点难度吧,呵呵,高手指点,谢谢

其实某些杀毒软件就有这个功能啊,他们会提示“***进程正在修改注册表,是否允许.......”。

也就是说这个似乎也不是太难实现,那么到底怎么实现呢?

用户系统信息:Mozilla/4.0 (compatible; MSIE 6.0; Windows NT 5.1; SV1; .NET CLR 2.0.50727)