如果要监控对文件夹,可以用CopyHook,这样可以拒绝删除,移动等等操作。如果要监控的是文件又应该如何呢?是不是只有HOOK所有的文件API函数?
    大家有这方面的经验吗,提出来讨论讨论吧。

解决方案 »

  1.   

    如果在2000下,可以使用ReadDirectoryChangesW来得到发生了变化的文件名称,这样就可以对自己要监控的文件进行实时查询了
      

  2.   

    下面这个地方有关于目录监测的源码
    http://www.vckbase.com/code/listcode.asp?mclsid=13&sclsid=1301
    下面这个是一篇文章是对上面的源码的补充
    http://www.vckbase.com/document/viewdoc.asp?id=845楼主可以去看看!希望能对你有所帮助!
      

  3.   

    to  flyelf(空谷清音) and vcforever(霓裳羽衣):
     
    ReadDirectoryChangesW函数只能在用户进行操作以后得到通知,而不能阻止用户进行这个操作(用CopyHook就可以,不过只能针对文件夹)。不知道还有没有别的办法?
      

  4.   

    希望楼主提供opyHook例子,大家相互学习楼主试过FILEMON没?
      

  5.   

    to lovenoend(有容乃大):
       FILEMON是什么东西?CopyHook的代码我马上传到文档中心去。
      

  6.   

    文件驱动程序可以满足你的需要
    下载个FILEMON研究
      

  7.   

    ReadDirectoryChangesW变化快了,根本不行
      

  8.   

    I could be wrong, but there is no known (documented or undocumented) APIs or interfaces to do the similar things on files like Copy Hook does on foldersyou need to go deeper and write a  driver (virtual device driver or file system driver) the above-mentioned filemon is downloadable athttp://www.sysinternals.com/ntw2k/source/filemon.shtmlbut sysinternals no longer provides source code for filemon, but you can find an earlier version herehttp://www.epoch.com.tw/download/code/vb%20source%20code.htmhttp://www.programmersheaven.com/zone15/cat239/2423.htm
      

  9.   

    FindFirstChangeNotification( );
    其中FindFirstChangeNotification(lpzpath,fwatchsubtree,fdwfilter)中的lpzpath表示要监视的路径名,fwatchsubtree判断是否查看子目录,fdwfilter为要监视的事件,函数执行成功后返回一个句柄。   参数fdwfilter取值及其含义如下:  FILE_NOTIFY_CHANGE_FILE_NAME  查看指定目录下任何文件名的改变  FILE_NOTIFY_CHANGE_DIR_NAME  查看指定目录下任何目录名的改变  FILE_NOTIFY_CHANGE_SIZE  查看指定目录下文件大小的改变  FILE_NOTIFY_CHANGE_ATTRIBUTES  查看指定目录下文件属性的改变希望对你有帮助,祝你成功
      

  10.   

    我只能给你提供方案,没有代码演示的。例如:你监倥某个文件。如果是EXE文件的话就太麻烦了,如果EXE一运行,你是不是要监倥他所做的修改呢?太麻烦。我假如你监倥个死文件。首先考虑键盘监倥,鼠标监倥。也就是说,在你的监倥程序里来几个条件判断,过滤其他的文件。如果系统的焦点切换到你所监倥的这个文件,马上开始键盘和鼠标监倥,还有屏幕图形的截取,并记录数据,保存到盘。当在此文件触发焦点时,也许会被其他程序打开,但键盘操作都被记录。打开后HOOK此窗口,看鼠标的位置变化。我说的这中监倥,可以恢复被手工破坏的文件,比如,人为的在文件里删了一些字符,加了一些字符。
    总的说,就是你监倥文件就等于个屏幕录象机,就是当指到你特定的文件时才开始记录。最后保存成AVI格式,如果你会做屏幕录象机的话很简单的,我倒不太会做屏幕录象。这种可视化的监倥我认为很好,可能速度有点慢,但你做监倥,图形质量倒不要太讲究,高度压缩的。字体还是很清楚的。最后的文件也小的多。
    不知道我说的这中监倥方式你觉得怎么样?也许不是你想要的。印象里我没见过文件监倥的API。倒是见过键盘和鼠标回放的程序。呵呵
      

  11.   

    sos
    http://expert.csdn.net/Expert/topic/2493/2493152.xml?temp=.7416193