想指定个文件夹,程序运行后,禁止、复制、移动其中的文件?有函数让文件一直处在使用中也可!!!

解决方案 »

  1.   

    您可以将目标文件夹改名.
    如:将一个名为 123 的文件夹
    改名成:
    123..
    此时用户是无法直接访问的,更不可移动或删除Shell("cmd.exe /c " & chr34 & "move c:\123 c:\123...\" & chr(34))
      

  2.   

    其实我提供的只是一个比较"偏门"的方法.然而,在真正意义上的保护文件夹的方法,是需要用文件驱动来保护的,而编写驱动,C#就无能为力了,这需要C++等底层支持.
    在您的Button1_Click()事件里
    只要写一句:
    Shell("cmd.exe /c " & chr34 & "move c:\123 c:\123...\" & chr(34)) 
    会在您的C盘根目录建立一个无法删除(DOS下不可见,无法移动,复制等操作,无法打开进入)的文件夹.
    该方法可以保护您的程序不被一些初/中级用户随意修改,但是,千万不要将您的主程序放在该文件夹里,因为Windows无法正确识别.
    进入的方法:
    手动进入:
    开始=>运行=>c:\123~1=>确定
    代码方式:
    Shell("explorer.exe c:\123~1")
      

  3.   

    删除该文件夹方法:
    手动:
    开始=>运行=>cmd.exe /c "rd c:\123~1"=确定
    代码方式:
    Shell("cmd.exe /c " & chr(34) & "rd c:\123~1" & chr(34))更多说明请百度搜索"文件夹加密"
      

  4.   

    哦,那个东西,加了特殊字符,直接点击文件夹是打不开,但是会DOS的人 就很容易打开了
      

  5.   

    用FileSystemWatcher,FileSystemWatcher监控某个文件时,当该文件夹中有一文件夹也被FileSystemWatcher监控的话,这个文件夹是不能删除的,提示是文件夹在被使用
      

  6.   

    难……要拦截API,这些歪门邪道感觉不是C#做的事