全局钩子下监控文件的打开、复制、转移等操作

1、监控文件的打开操作可以直接监控createprocessw函数,这个函数在win xp-win 8下都能良好的工作。

2、监控文件的复制、粘贴等操作,比较麻烦一些。常规的方式是监控copyfile\movefile\等API函数。但又很多不理想的地方。其一,据网上说这些API在win7下不好使;其二,监控这些API往往监控不到操作。比如copyfile函数基本监控不到文件的复制、movefile函数只能在文件删除时起作用。

   由于以上原因,想到挂钩鼠标和监控creatfile函数相结合的方法来实现对文件拷贝操作的监控。具体方法如下:

   1、监控鼠标操作,当监控到右键时,记下标志;

   2、有右键标记且监控到creatfile函数时,打开这个文件进行扫描;

   3、文件扫描结束,输出结果。

   采用这方基本能够监控到文件的复制等操作。

   存在的一些注意问题:

   1、在win8 中删除文件也会调用creatfile函数,这样,如果不对文件是否存在进行检查,就会内存越界而报错。win xp没有这种现象发生。

   2、这种方法还是过于粗糙,比如,在别额地方那个点击鼠标右键后,当鼠标移到目标文件上方,也会触发搜索。这种搜索就是一种滥报。


你可能感兴趣的:(鼠标,文件,全局钩子)