这个网友曾经问过的个问题,但是最终没有具体的解决方案,下面的是连接.
http://topic.csdn.net/t/20060919/23/5033673.html
具体该怎么做,哪位大虾能回答一下.我的目的是对操作系统某写文件的保护,禁止用户对其复制.

解决方案 »

  1.   

    HOOK CreateFileA 和 CreateFileW
      

  2.   

    用拷贝钩子实现对文件夹的监控ICopyHook是一个用于创建拷贝钩子处理程序COM接口,它决定一个文件夹或者打印机对象是否可以被移动,拷贝,重命名或删除。Shell在执行这些操作之前,会调用ICopyHook接口的CopyCallback方法对它们进行验证。CopyCallback返回一个int值指示Shell是否应该继续执行这个操作。返回值IDYES表示继续,而返回值IDNO和IDCANCEL则表示终止。http://dev.csdn.net/develop/article/22/22347.shtm
      

  3.   

    到这里下载代码
    ICopyHook implementation
    http://www.codeproject.com/KB/atl/CopyHook.aspx
      

  4.   


    意思就是不让用户COPY给别人使用该文件.
      

  5.   


    您好,该HOOK只能实现对文件夹的监控吗?里面的文件能也被监视起来吗?
    你说的这个方法我会试一下.
      

  6.   

    把选定的文件打开,并锁定读/写就可以了。OpenFile(lpFileName, lpBuff, OF_SHARE_DENY_READ)
      

  7.   

    http://waxb.blog.com.cn/archives/2007/APIHook4.shtml按着里面的例子做,把它换成hook CreateFileA和CreateFileW这两个API就可以了
      

  8.   

    应该是看这个例子
    http://waxb.blog.com.cn/archives/2007/APIHook5.shtml
      

  9.   

    感谢楼上为我提供学习APIHOOK的地址,我先看看。