各位在上,在下有礼!
    长话短说了,本机上的文件需要保护,具体说就是:
        指定的文件不被系统的删除命令删除,不可拷贝,不可以被挪地方.
        [超级牛人可以考虑:文件内容不被篡改!呵呵,好家伙,难哪.]
    大家都玩过"文件保险箱"吧?没有?去载一个看一下,挺有意思的,可以让文件的删除瘫痪哪,所以很想知道是怎么做到的,我想破了脑袋,可惜才疏学浅,因此在这藏龙卧虎之地借一块地方,摆下这个擂台,欢迎四方朋友牛人前来指教!是牛人的请畅所欲言,暂时不是牛人的也请帮忙捧个场子,顶一下.^-^
    学Delphi有些天了,觉得功能强大又方便,API封装的也严实,呵呵.
    多看多问,集思广议,是功力提高的不二法门.真的希望大家都来出出主意,这一期的题目就是文件保护,大家发言的时候不要走题,呵呵.
    分儿不是问题,不够可以添.对于见解独特的,对我们菜鸟一族帮助特别突出的,可以额外给分,说到做到.呵呵
    先谢过大家了!有事没事的,请帮忙顶一把.谢了.

解决方案 »

  1.   

    做外壳勾子监视文件操作
    还有办法就是HOOK文件操作相关的API(不过只是个想法,没试过)
      

  2.   

    有研究过
    就是用 API HOOK,把 SHFileOperation 换成自己的函数,然后过滤掉 CreateFile、MoveFile、DeleteFile 就行了。
      

  3.   

    xiaoxiaobai(小白.net)大侠:
    pankun(剑神一笑)(闭关不忘灌水)大侠:
      讲讲API HOOK的实现好吧?给咱们扫扫盲.
        
      

  4.   

    各位牛人:
        SHFileOperation的层次太高了,系统的文件操作比如说拷贝,删除,移动等都是用的底层功能调用啊.我已经成功的HOOK了SHFileOperation,可是对Explorer下的文件照删不误.有需要源码的我可以发上来.
      有没有牛人有更好的想法?文件要保护,最好是保护到变态级.这就是我的看法!!!
      

  5.   

    那要用VXD写驱动才行了,那样要用VC才能实现,用VC写IFS过滤驱动,很难的,我略看过一点
      

  6.   

    zijida(黄花菜),把你的代码发上来看看[email protected]
      

  7.   

    要么跑一个service, 始终抓着文件句柄不放;
    自己程序要用的时候才CloseHandle,用完了再由你的service CreateFile独占这个文件。
      

  8.   

    我就知道在Win2000下有个服务关了之后,就复制粘贴全不灵了。。我当时那个郁闷就别提了要知道,我把它依赖的服务禁用了然后对话框也出不来了最后重装了
      

  9.   

    RamjetZhang(王小桃) 
      呵呵,你的想法挺高的哎,反正是死死的抓住句柄不放,有创意!!!!!!!!!!!!!
      问题在于,这个service在NT下总是会显示在进程列表中的,要解决它也太容易了点儿吧?
      用驱动来过滤的想法不是没有考虑过,跟前几位的困难一样,实现起来难度...嘿,太难为咱菜鸟儿了吧?在某高人的反病毒引擎设计论文中提到了一种方法,具体的内容我下次贴上来,一句话吧.看不太懂.
      不过我同意大家的意见,用驱动来做是最稳当彻底的办法,问题是懂驱动的牛人到底是不多的,肯花时间来指导我们的就更少.我们一边期待牛人大驾光临,一边自力更生吧.有资料的发上来看看啊....^-^
      通向罗马不只有一条路,大家还有什么又省力又省心的解决方法吗?
      比如说把DEL.exe,Copy.exe什么的全替换成咱们自已的,呵呵.(大家别倒啊..更别拿鸡蛋扔我,太浪费了.)开个玩笑.继续期待大家的意见.!!!
    SiTwo(闻之笑) :
     你看到的服务是什么名字?
      

  10.   

    DOS下总可以删把del内部命令啊
      

  11.   

    SiTwo(闻之笑) 的服务是RPC服务,他一定被冲击波类攻击过哈哈