标题: BAT版NTFS文件锁定程序,设置文件权限,改名等 [打印本页]
作者: wrz99 时间: 2011-7-26 16:46 标题: BAT版NTFS文件锁定程序,设置文件权限,改名等
这是转的贴!
确实很好用!- @echo off
- @del c:\CSK.DLL /q
- @echo on
- @ECHO OFF
- REM CACLS只是修改文件的访问权限。防删要先设置只读属性;不过完全锁定则不用预先设置属性;
- REM 另外,要解除文件的所有属性也必须先用CACLS对文件进行解锁。
-
- TITLE NTFS文件锁定程序 V1.3
- mode con cols=68 lines=24
- COLOR 2F
-
- :BEGIN
- SET LOOP=
- SET GRADE=
- SET ACTIVE=
- CLS
- ECHO.
- ECHO ╭────────────╮
- ECHO ╭────┤ NTFS文件锁定程序 V1.3 ├────╮
- ECHO │ ╰────────────╯ │
- ECHO │ │
- ECHO │ [1] 初级锁定(防删 只读 可改名 非隐藏)│
- ECHO │ │
- ECHO │ [2] 中级锁定(防删 只读 可改名 隐藏) │
- ECHO │ │
- ECHO │ [3] 高级锁定(防删 禁读 禁改名 非隐藏)│
- ECHO │ │
- ECHO │ [4] 完全锁定(防删 禁读 禁改名 隐藏) │
- ECHO │ │
- ECHO │ [5] 解 锁 (解除所有属性) │
- ECHO │ │
- ECHO │ [6] 辅助工具 [7] 帮助 [0] 退出 │
- ECHO │ │
- ECHO ├──────────────────────┤
- ECHO │ 注:只对NTFS分区的文件有效。 │
- ECHO ╰──────────────────────╯
- ECHO.
- SET Choice=
- SET /P Choice= 请按数字选择您要进行的操作,然后按Enter键:
-
- IF /I '%Choice%'=='1' GOTO LOOP1
- IF /I '%Choice%'=='2' GOTO LOOP2
- IF /I '%Choice%'=='3' GOTO LOOP3
- IF /I '%Choice%'=='4' GOTO LOOP4
- IF /I '%Choice%'=='5' GOTO LOOP5
- IF /I '%Choice%'=='6' GOTO LOOP6
- IF /I '%Choice%'=='7' GOTO LOOP7
- IF /I '%Choice%'=='0' GOTO EXIT
- GOTO BEGIN
-
- :LOOP1
- SET LOOP=LOOP1
- SET GRADE=CHUJI
- SET ACTIVE=0
- GOTO LOCK
- :CHUJI
- ping 127.0.0.1 -n 1 >nul
- echo y| cacls %Choice% /c /t /p everyone:f >nul 2>nul
- attrib +r -h +s %Choice% >nul 2>nul
- echo y| cacls %Choice% /c /t /p everyone:r >nul
- SET ACTIVE=LOCKED
- GOTO LOCK
-
- :LOOP2
- SET LOOP=LOOP2
- SET GRADE=ZHONGJI
- SET ACTIVE=0
- GOTO LOCK
- :ZHONGJI
- ping 127.0.0.1 -n 1 >nul
- echo y| cacls %Choice% /c /t /p everyone:f >nul 2>nul
- attrib %Choice% +r +h +s >nul 2>nul
- echo y| cacls %Choice% /c /t /p everyone:r >nul
- SET ACTIVE=LOCKED
- GOTO LOCK
-
- :LOOP3
- SET LOOP=LOOP3
- SET GRADE=GAOJI
- SET ACTIVE=0
- GOTO LOCK
- :GAOJI
- ping 127.0.0.1 -n 1 >nul
- echo y| cacls %Choice% /c /t /p everyone:f >nul 2>nul
- attrib %Choice% +r -h +s >nul 2>nul
- echo y| cacls %Choice% /D everyone >nul
- SET ACTIVE=LOCKED
- GOTO LOCK
-
- :LOOP4
- SET LOOP=LOOP4
- SET GRADE=WANQUAN
- SET ACTIVE=0
- GOTO LOCK
- :WANQUAN
- ping 127.0.0.1 -n 1 >nul
- echo y| cacls %Choice% /c /t /p everyone:f >nul 2>nul
- attrib %Choice% +r +h +s >nul 2>nul
- echo y| cacls %Choice% /D everyone >nul
- SET ACTIVE=LOCKED
- GOTO LOCK
-
- :LOOP5
- SET LOOP=LOOP5
- SET GRADE=JIESUO
- SET ACTIVE=0
- GOTO LOCK
- :JIESUO
- ping 127.0.0.1 -n 1 >nul
- echo y| cacls %Choice% /c /t /p everyone:f >nul 2>nul
- attrib %Choice% -r -h -s >nul 2>nul
- SET ACTIVE=UNLOCKED
- GOTO LOCK
-
- :LOCK
- CLS
- ECHO.
- ECHO ╭────────────╮
- IF '%GRADE%'=='CHUJI' ECHO ╭────┤ 初级锁定 ├────╮
- IF '%GRADE%'=='ZHONGJI' ECHO ╭────┤ 中级锁定 ├────╮
- IF '%GRADE%'=='GAOJI' ECHO ╭────┤ 高级锁定 ├────╮
- IF '%GRADE%'=='WANQUAN' ECHO ╭────┤ 完级锁定 ├────╮
- IF '%GRADE%'=='JIESUO' ECHO ╭────┤ 解 锁 ├────╮
- ECHO │ ╰────────────╯ │
- ECHO │ │
- IF '%GRADE%'=='CHUJI' ECHO │ (防删 只读 可改名 非隐藏) │
- IF '%GRADE%'=='ZHONGJI' ECHO │ (防删 只读 可改名 隐藏) │
- IF '%GRADE%'=='GAOJI' ECHO │ (防删 禁读 禁改名 非隐藏) │
- IF '%GRADE%'=='WANQUAN' ECHO │ (防删 禁读 禁改名 隐藏) │
- IF '%GRADE%'=='JIESUO' ECHO │ (解除所有属性) │
- ECHO │ │
- IF '%GRADE%'=='JIESUO' ECHO │ 手工解锁请输manualunlock │
- ECHO │ │
- IF NOT '%GRADE%'=='JIESUO' ECHO │ │
- ECHO │ │
- IF '%ACTIVE%'=='0' ECHO │ 请把文件(夹)直接拖到本窗口,然后按Enter键。│
- IF '%ACTIVE%'=='1' ECHO │ 正在锁定,请稍等... │
- IF '%ACTIVE%'=='' ECHO │ 正在解锁,请稍等... │
- IF '%ACTIVE%'=='LOCKED' ECHO │ 恭喜!文件已锁定。 │
- IF '%ACTIVE%'=='UNLOCKED' ECHO │ 恭喜!文件已解锁。 │
- IF '%ACTIVE%'=='NOFILE' ECHO │ 输入的文件不存在! 请按任意键重新输入。 │
- ECHO │ │
- ECHO │ │
- IF '%ACTIVE%'=='0' ECHO │ 返回请输0 │
- IF '%ACTIVE%'=='1' ECHO │ │
- IF '%ACTIVE%'=='LOCKED' ECHO │ 请按任意键继续... │
- IF '%ACTIVE%'=='UNLOCKED' ECHO │ 请按任意键继续... │
- IF '%ACTIVE%'=='NOFILE' ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO ├──────────────────────┤
- ECHO │ 注:只对NTFS分区的文件有效。 │
- ECHO ╰──────────────────────╯
- ECHO.
- IF '%ACTIVE%'=='1' GOTO %GRADE%
- IF '%ACTIVE%'=='' GOTO %GRADE%
- IF '%ACTIVE%'=='LOCKED' GOTO CONTINIUE
- IF '%ACTIVE%'=='UNLOCKED' GOTO CONTINIUE
- IF '%ACTIVE%'=='NOFILE' GOTO CONTINIUE
- IF '%GRADE%'=='JIESUO' GOTO UNLOCK
- SET Choice=
- SET /P Choice= 需锁定的文件(夹)是:
- IF '%Choice%'=='' GOTO %LOOP%
- IF '%Choice%'=='0' GOTO BEGIN
- IF '%Choice%'=='MANUALUNLOCK' GOTO MANUAL
- IF '%Choice%'=='manualunlock' GOTO MANUAL
- IF NOT EXIST %Choice% GOTO NOFILE
- SET ACTIVE=1
- GOTO LOCK
-
- :UNLOCK
- SET Choice=
- SET /P Choice= 需解锁的文件(夹)是:
- IF '%Choice%'=='' GOTO %LOOP%
- IF '%Choice%'=='0' GOTO BEGIN
- IF '%Choice%'=='MANUALUNLOCK' GOTO MANUAL
- IF '%Choice%'=='manualunlock' GOTO MANUAL
- IF NOT EXIST %Choice% GOTO NOFILE
- SET ACTIVE=
- GOTO LOCK
-
- :CONTINIUE
- PAUSE >NUL
- GOTO %LOOP%
-
- :MANUAL
- START [url]http://hi.baidu.com/bigtoothcat/blog/item/e4d8926f9d9c32d281cb4a0b.html[/url]
- GOTO %LOOP%
-
- :NOFILE
- SET ACTIVE=NOFILE
- GOTO LOCK
-
- :LOOP6
- set pan=
- SET ACTIVE=
- CLS
- ECHO.
- ECHO ╭────────────╮
- ECHO ╭────┤ 辅助工具 ├────╮
- ECHO │ ╰────────────╯ │
- ECHO │ │
- ECHO │ [1] 显示隐藏文件 │
- ECHO │ │
- ECHO │ [2] 不显示隐藏文件 │
- ECHO │ │
- ECHO │ [3] 显示文件扩展名 │
- ECHO │ │
- ECHO │ [4] 不显示文件扩展名 │
- ECHO │ │
- ECHO │ [5] 查看分区格式 │
- ECHO │ │
- ECHO │ [0] 返回上级菜单 │
- ECHO │ │
- ECHO ╰──────────────────────╯
- ECHO.
- SET Choice=
- SET /P Choice= 请按数字选择您要进行的操作,然后按Enter键:
-
- IF /I '%Choice%'=='1' GOTO LOOP61
- IF /I '%Choice%'=='2' GOTO LOOP62
- IF /I '%Choice%'=='3' GOTO LOOP63
- IF /I '%Choice%'=='4' GOTO LOOP64
- IF /I '%Choice%'=='5' GOTO LOOP65
- IF /I '%Choice%'=='0' GOTO BEGIN
- GOTO LOOP6
-
- :LOOP61
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t reg_dword /d 1 /f >NUL
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 0 /f >NUL
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowSuperHidden /t reg_dword /d 1 /f >NUL
- SET ACTIVE=SHOW1
- GOTO SHOW
-
- :LOOP62
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v Hidden /t reg_dword /d 00000000 /f >NUL
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000001 /f >NUL
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v ShowSuperHidden /t reg_dword /d 00000000 /f >NUL
- SET ACTIVE=HIDE1
- GOTO SHOW
-
- :LOOP63
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000000 /f >NUL
- SET ACTIVE=SHOW2
- GOTO SHOW
-
- :LOOP64
- reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced" /v HideFileExt /t reg_dword /d 00000001 /f >NUL
- SET ACTIVE=HIDE2
- GOTO SHOW
-
- :LOOP65
- set pan=
- SET ACTIVE=FS1
- GOTO SHOW
- :LOOP651
- set/p pan= 要查看的分区是:
- IF "%pan%"=="0" GOTO LOOP6
- IF "%pan%"=="" GOTO LOOP65
- IF EXIST %pan%: GOTO LOOP652
- rem FOR %%a IN (C,D,E,F,G,H,I,J,K,L,M,N,O,P,Q,R,S,T,U,V,W,X,Y,Z,c,d,e,f,g,h,i,j,k,l,m,n,o,p,q,r,s,t,u,v,w,x,y,z) DO IF "%%a"=="%pan%" GOTO LOOOP652
- SET ACTIVE=FS3
- GOTO SHOW
- :LOOP652
- for /f "tokens=1,2" %%i in ('chkntfs %pan%:') do (
- set var=%%j
- goto type
- )
- goto :eof
- :type
- set var=%var:。=%
- SET ACTIVE=FS2
- GOTO SHOW
-
- :SHOW
- SET Choice=
- CLS
- ECHO.
- ECHO ╭────────────╮
- ECHO ╭────┤ 辅助工具 ├────╮
- ECHO │ ╰────────────╯ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- IF '%ACTIVE%'=='SHOW1' ECHO │ 显示隐藏文件成功,请刷新文件夹。 │
- IF '%ACTIVE%'=='HIDE1' ECHO │ 不显示隐藏文件成功,请刷新文件夹。 │
- IF '%ACTIVE%'=='SHOW2' ECHO │ 显示文件扩展名成功,请刷新文件夹。 │
- IF '%ACTIVE%'=='HIDE2' ECHO │ 不显示文件扩展名成功,请刷新文件夹。 │
- IF '%ACTIVE%'=='FS1' ECHO │请输入要查看的盘符(不带冒号),然后按Enter键。│
- IF '%ACTIVE%'=='FS2' ECHO │ %pan%盘的文件系统类型是 %var% 。 │
- IF '%ACTIVE%'=='FS3' ECHO │ 输入的分区不存在,请重新输入。 │
- ECHO │ │
- IF '%ACTIVE%'=='FS1' ECHO │ 返回请输0。 │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO │ │
- ECHO ╰──────────────────────╯
- ECHO.
- IF NOT '%ACTIVE%'=='FS1' ECHO 按任意键继续...
- IF '%ACTIVE%'=='FS1' GOTO LOOP651
- PAUSE >NUL
- IF '%ACTIVE%'=='FS2' GOTO LOOP65
- IF '%ACTIVE%'=='FS3' GOTO LOOP65
- GOTO LOOP6
-
- :LOOP7
- CLS
- ECHO.
- ECHO 使用说明
- ECHO.
- ECHO 当需要改变锁定方式时直接选用其他锁定方式即可。禁读时还可以防止别人复制;锁定只是修改了文件的访问权限,因此它不会改写注册表,不创建隐藏文件夹,不改变文件结构,完全不会损坏原有数据,而且这个过程是不需要输入密码的,除非您给本程序加入启动密码,否则任何使用本程序的人都可以解锁文件。另外,锁定只是相对Windows环境而言,在纯DOS环境仍然是可以访问和删除的;隐藏也只是改变文件的属性,所以要实现绝对的锁定和隐藏请使用其他软件,本程序只适合忽悠小朋友。
- ECHO.
- ECHO 本程序免费使用,禁止利用本软件进行任何商业盈利活动,否则产生的一切后果将由您自己承担!
- ECHO.
- ECHO 如需For WinPE版本 请访问软件主页:[url]http://hi.baidu.com/bigtoothcat[/url]
- ECHO.
- ECHO 版权所有 (c)2009,Bigtoothcat 保留所有权利 2009年06月12日
- ECHO.
- ECHO 请按任意键返回...
- PAUSE >NUL
- GOTO BEGIN
-
- :EXIT
- SET GRADE=
- SET Choice=
- SET LOOP=
- SET ACTIVE=
- CLS
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO.
- ECHO 更多精彩软件尽在
- ECHO.
- ECHO ☆大牙猫电脑维护工作室☆
- ECHO [url]http://hi.baidu.com/bigtoothcat[/url]
- ECHO.
- ECHO.
- ECHO.
- ping 127.0.0.1 -n 2 >nul
- del %0%
复制代码
作者: wrz99 时间: 2011-7-26 22:15
哦,已编辑了,真不知道代码放到code标签里才行!
作者: lengyff 时间: 2013-8-5 15:41
好东东,谢谢楼主
欢迎光临 批处理之家 (http://bbs.bathome.net/) |
Powered by Discuz! 7.2 |