原创代码共享:批处理工具箱

原创代码共享:批处理工具箱

前言:本工具箱由郭成杰搜集、整合并编写成批处理程序,如侵犯您的著作权,请与我联系。本批处理包含众多功能,功能就不在此一一列举。郭成杰享有本程序的著作权等权利,不允许商业用途,不允许转载但可连接至本站。根据二○○二年一月一日《计算机软件保护条例》规定:为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬!其他用途必须经我许可。

源码:

编码方式:打开记事本,粘贴以下内容,重命名为  批处理工具箱.bat

注意:编码方式:ANSI

:begin
echo off
cls
mode con: lines=20 cols=45
title 批处理工具箱
color 2f
echo 批处理工具箱
echo [本批处理需要最高管理员权限来运行]
pause&cls&goto mainmenu

:mainmenu
cls
mode con: lines=20 cols=45
echo VAR: 0.3 BETA
echo 现在是:%date% %time%
echo 1.WIN7/WIN8 实用虚拟Wifi工具
echo 2.日历
echo 3.批处理开平方
echo 4.扫雷
echo 5.修复IE
echo 6.系统服务优化
echo 7.杀毒(清除SXS病毒及一些简单的自传播病毒)
echo 8.系统信息
echo 9.显卡信息
echo a.和任意QQ进行聊天
echo b.清理系统垃圾工具箱
echo c.关机
echo d.关于
echo e.退出
echo f.刷新
set/p c=请输入序号
if "%c%"=="1" goto wifigongju
if "%c%"=="2" goto rili
if "%c%"=="3" goto kaipingfang
if "%c%"=="4" goto saolei
if "%c%"=="5" goto xiufuie
if "%c%"=="6" goto xitongfuwuyouhua
if "%c%"=="7" goto shadu
if "%c%"=="8" goto system
if "%c%"=="9" goto xianka
if "%c%"=="a" goto qq
if "%c%"=="b" goto menu
if "%c%"=="c" goto menu6
if "%c%"=="d" goto about
if "%c%"=="e" exit
if "%c%"=="f" goto begin
echo 您选择编号错误或不存在,请重新输入。
ping 127.1 /n 5 >nul
goto mainmenu

:wifigongju
@echo off&title 实用虚拟Wifi工具
reg query hkcr\DesktopBackground\Shell\VirWifi >nul 2>nul && goto DelVirtualWifi || goto CreateVirtualWifi
:CreateVirtualWifi
echo 两个硬条件:一、无线网卡;二、Windows 7以上系统。
echo 创建虚拟Wifi需四步!&echo;
set /p SSID=. 第一步:请设置Wifi名称(字母数字):
set /p PassWord=. 第二步:请设置Wifi密码(至少8位):
echo;&echo 注意:如被杀毒软件拦截,请选择“允许运行”!&echo;
netsh wlan set hostednetwork mode=allow ssid=%SSID% key=%PassWord% >nul 2>nul
net start MpsSvc
reg add hkcr\DesktopBackground\Shell\VirWifi /ve /t reg_sz /d "开启虚拟WIFI" /f >nul 2>nul
reg add hkcr\DesktopBackground\Shell\VirWifi\command /ve /t reg_sz /d "cmd /c reg query hkcr\DesktopBackground\Shell\VirWifi /ve | find """关闭虚拟WIFI""" >nul 2>nul && (netsh wlan stop hostednetwork >nul 2>nul & reg add hkcr\DesktopBackground\Shell\VirWifi /ve /t reg_sz /d """开启虚拟WIFI""" /f >nul 2>nul) || (netsh wlan start hostednetwork >nul 2>nul & reg add hkcr\DesktopBackground\Shell\VirWifi /ve /t reg_sz /d """关闭虚拟WIFI""" /f >nul 2>nul)" /f >nul 2>nul
schtasks /create /ru system /tn RestVirWIFI /sc onstart /tr "cmd /c reg add hkcr\DesktopBackground\Shell\VirWifi /ve /t reg_sz /d """开启虚拟WIFI""" /f >nul 2>nul" /f >nul 2>nul
echo 虚拟Wifi已启用!“无线网络连接 2”为新建的虚拟连接
echo 图标右边会显示“Microsoft Virtual WiFi Miniport Adapter”
echo;
echo 第三步:手动设置共享
echo 1.打开网络与共享中心→更改适配器设置→本地连接→属性→共享
echo 2.两个复选框均选择“允许其他 ... 连接”
echo 3.“家庭网络连接”选择“无线网络连接 2”
echo 设置成功后“本地连接”图标右边会显示“网络 2,共享的”
echo;
echo 按任意键打开网络与共享中心 . . .
pause>nul&Ncpa.cpl
echo;
echo 第四步:桌面右键菜单选择“开启/关闭虚拟Wifi”
echo;
netsh wlan set hostednetwork mode=allow
netsh wlan start hostednetwork
echo 虚拟Wifi创建成功!
ping /n 3 127.1.1>nul&goto mainmenu
:DelVirtualWifi
cls
echo 已经存在虚拟Wifi,您可以:
echo.
echo 启动或关闭虚拟Wifi:在桌面右键菜单选择“开启/关闭虚拟Wifi”
echo 删除虚拟Wifi,输入【D】
echo 取消自动关机,输入【C】只能在关机倒计时时使用!
echo 设置自动关机时间,输入如:02:03:45
echo 请注意大小写!
echo.
set /p input=. 请输入:
if /i %input%==D goto DelVirtualWifi2
if /i %input%==C shutdown -a
at %input% shutdown -s -f -t 120
echo;
echo 您的电脑将在时间 %input% 自动关机!关机倒计时为 120 秒!
echo;
ping /n 3 127.1.1>nul&exit
:DelVirtualWifi2
netsh wlan set hostednetwork mode=disallow >nul 2>nul
reg delete hkcr\DesktopBackground\Shell\VirWifi /f >nul 2>nul
schtasks /delete /tn RestVirWIFI /f >nul 2>nul
echo 虚拟Wifi删除成功!
goto mainmenu

:rili
@echo off&color 1f&mode con: lines=15 cols=40
title 日历 输入格式如:2008-9
set "var=日  一  二  三  四  五  六"
set "max= 1"&set "rq="
:start
setlocal enabledelayedexpansion
if not defined rq set rq=%date:~0,4%-%date:~5,2%
if "!rq:~2,1!"=="" set rq=%date:~0,4%-%rq%
if "!rq:~3,1!"=="" set rq=%date:~0,4%-%rq%
set "rq=%rq%-1"
for /f "tokens=1,2 delims=/\-: " %%a in ("%rq%") do (
set /a y=%%a,m=100%%b%%100
)
set /a leap="^!(y%%4)&^!(^!(y%%100))|^!(y%%400)+28"
set "str=31 %leap% 31 30 31 30 31 31 30 31 30 31"
for /f "tokens=%m% delims= " %%a in ("%str%") do (
for /l %%i in (2 1 %%a)do set mm= %%i&set "max=!max!!mm:~-5!"
)
call :Date2Day "%date%" "%rq%" ok
for /l %%a in (1 1 %ok%) do set "num= !num!"
set "max=!num!!max!"
echo.&echo %y% 年 %m% 月
echo.&echo %var%
for /l %%a in (1 1 8) do (
if defined max (
echo !max:~0,32!
set "max=!max:~35!"
))
echo.&echo.&echo 请输入 年-月 如:2008-2
echo.&set /p rq= &cls
endlocal&set rq=%rq%&goto start

:Date2Day 计算指定日期的星期及相隔的天数
setlocal enabledelayedexpansion&set "n="
for %%i in ("%~1" "%~2") do (
for /f "tokens=1-3 delims=/-:\., " %%a in ('echo/%%~i') do (
set /a yy=%%a,mm=100%%b%%100,dd=100%%c%%100)
set /a z=14-mm,z/=12,y=yy+4800-z,m=mm+12*z-3,j=153*m+2
set /a j=j/5+dd+y*365+y/4-y/100+y/400-2472633
if not defined n (set /a n=j) else (set /a n-=j))
for %%a in (一/1 二/2 三/3 四/4 五/5 六/6 日/0) do (
for /f "tokens=1,2 delims=/" %%i in ("%%a")do set %%i=%%j&set ".%%j=%%i")
if %n% gtr 0 (set /a d=^(7-n%%7+%date:~-1%^)%%7) else (
set /a d=^(~n+1+%date:~-1%^)%%7)
endlocal&set %~3=%d%&goto :EOF
goto mainmenu

:kaipingfang
set MAX=2147483647
cls
set /p n=输入待开方数(1~%MAX%):
set a=2
set r=
:int_part
set /a old_a=a,a=(n/a+a)/2
if %old_a% lss %a% goto int_part
set /a delta=old_a-a
if %delta% gtr 1 goto int_part
::prepare
set /a near_n=a*a
if %near_n% equ %n% goto end
set /a t=n-near_n,u=a
:dec_part
set /a t*=100,d=10,tol_d=MAX/(u*20)
if %tol_d% lss 9 goto end
if %t% lss 0 goto end
:try_d
set /a d-=1,v=d*(d+u*20)
if %v% gtr %t% goto try_d
set /a t-=v,u=u*10+d
set r=%r%%d%
goto dec_part
:end
if "%r%" neq "" set a=%a%.%r%
echo 结果:%a%
pause
goto mainmenu

:saolei
@echo off&setlocal enabledelayedexpansion
title …扫雷(¤)…
:starts
color f0&mode con cols=70 lines=20
set zm=A B C D E F G H I J K L M N O P
set lei=¤&set qi=♀&cls&call :sysm&echo.
echo.版本说明:
echo.。。输入兼容(如:A3;a3;3a;3A)均代表同一坐标点
echo.。。支持一次多个输入,以空格间隔(格式为:1a 2a 3a bj4d cx5f)。
echo.。。请按格式输入,错误输入可能造成未知错误。
:::::还有其他功能和便捷操作未作详述,当做小彩蛋自己发掘吧。:::::
echo.&set /p qijing=请选择难度(r:容易—9×9 y:困难—16×16 其他:默认-12×12)#
set hb=!qijing:~0,1!&set js=!qijing:~1!
set jslv=16&for /l %%a in (10 1 30) do if %%a==!js! set /a jslv=%%a
if !hb!==r (set nd_=9&set zm=!zm:~0,33!&mode con cols=45 lines=28&set kg= ) else (
if !hb!==y (set nd_=16&mode con cols=70 lines=40&set kg= ) else (
set nd_=12&set zm=!zm:~0,45!&mode con cols=55 lines=32&set kg= )
)
cls&set /a nd#=!nd_!*!nd_!
::初始表
set h1=┳━&set h2=╋━&set h3=┻━
set a1=&set a2=&set a3=&set hb=&set js=0
for /l %%a in (1,1,3) do for /l %%i in (2,1,!nd_!) do set a%%a=!a%%a!!h%%a!
for /l %%a in (1,1,!nd_!) do set hb=!hb!┃▓
for /l %%a in (1 1 !nd#!) do set bj%%a=▓&set bj_%%a=
::布雷,默认16%
for /l %%i in (2,1,!nd#!) do (set /a s=!random!%%100&if !s! lss !jslv! set bj_%%i=¤)
::标准数据
set js_lei=0
for /l %%a in (1 1 !nd#!) do if !bj_%%a!==¤ (set /a js_lei+=1) else (set pp=0&call :sjk %%a
for /l %%b in (!_1!,1,!_2!) do if !x%%b! gtr 0 if !x%%b! leq !nd#! for %%c in (!x%%b!) do if !bj_%%c!==¤ set /a pp+=1
set "bj_%%a=!pp! ")
::查看标准数据可以使用cd.>bjsj.txt&for /l %%a in (1 1 !nd#!) do echo bj_%%a=!bj_%%a!>>bjsj.txt
call :huabiao xx 画初始表
::游戏开始
:yxks
echo.上次输入#!qijing! #%1 %2
set /p qijing=请输入坐标(如:3a;标记旗bj3a;撤销标记旗cx3a) #
for %%a in (!qijing!) do set sr=%%a&call :zbcl
goto yxks
::游戏输入数据处理中心
:zbcl
if /i !sr!==xx (goto starts) else (if /i !sr!==qj (cls&goto qj) else (if /i !sr!==sm cls&call :sysm&call :qj))
if /i "!sr:~0,2!"=="bj" (set sr=!sr:~2!&call :chuli 11) else (
if /i "!sr:~0,2!"=="cx" (set sr=!sr:~2!&call :chuli 22) else call :chuli)
goto :eof
:chuli
call :zb
for %%a in (!shu!) do (
if "%1"=="" (if "!bj%%a!"=="♀" set /a sx_lei+=1
set bj%%a=!bj_%%a!&set s=!bj_%%a!
if "!bj_%%a!"=="0 " set hh=&set js_=0&call :sjk %%a&call :fdg)
if "%1"=="11" if "!bj%%a!"=="▓" set bj%%a=♀&set /a sx_lei-=1
if "%1"=="22" if "!bj%%a!"=="♀" set bj%%a=▓&set /a sx_lei+=1
)
call :huabiao yy
if !sx_lei!==0 call :_ying
if !s!==¤ call :_shu 触雷了
if !sx_lei! lss 0 call :_shu 雷不能为负
goto :eof
:zb
::下面屏蔽部分错误输入,增强兼容性
if not "!sr:~3!"=="" set sr=17z
if "!sr:~0,1!" gtr "9" set sr=!sr:~1!!sr:~0,1!
if !sr:~-1! lss 9 (set sr=17z) else (if !sr:~-1! gtr !zm:~-1! set sr=17z)
set x=!sr:~0,-1!&if !x! gtr !nd_! (set sr=17z) else (if !x! lss 0 set sr=17z)
if !sr!==17z call :yxks 输入中出现错误 请重新输入
::得到坐标对应的数值
set /a shu=(!sr:~0,-1!-1)*!nd_!
for %%a in (!zm!) do set /a shu+=1&if /i "%%a"=="!sr:~-1!" goto :eof
::数据库
:sjk
set /a x2=%1-1&set /a x1=!x2!-!nd_!&set /a x3=!x2!+!nd_!
set /a x7=%1+1&set /a x6=!x7!-!nd_!&set /a x8=!x7!+!nd_!
set /a x4=%1-!nd_!&set /a x5=%1+!nd_!&set /a ww=!x5!%%!nd_!
if !ww!==0 (set _1=1&set _2=5) else (if !ww!==1 (set _1=4&set _2=8) else (set _1=1&set _2=8))
goto :eof
::如果打开的坐标值为“0”,则打开其附近8个坐标.这里最好用递归算法,但本人能力所限不能完成
::写了下面“fdg”;“fangdigui”两个标签基本实现一定条件下仿递归功能
:fdg
if "%1"=="qbbj" set /a js#+=1
for /l %%b in (!_1!,1,!_2!) do if !x%%b! gtr 0 if !x%%b! leq !nd#! for %%c in (!x%%b!) do if "!bj%%c!"=="▓" (
set bj%%c=!bj_%%c!&if "!bj%%c!"=="0 " set hh=!hh!%%c &set /a js_+=1)
if "!js#!"=="!js_#!" if not "!hh!"=="" call :fangdigui
goto :eof
:fangdigui
set js#=0&set h3=!hh!&set hh=&set js_#=!js_!&set js_=0
for %%a in (!h3!) do call :sjk %%a&call :fdg qbbj
goto :eof
::输
:_shu
msg %username% "#%1#你输了!"
set /p qijing=你输了!要再来一盘吗?(Y_确定/S_显示答案/其他_返回主菜单):
if /i !qijing!==y (goto starts) else (goto mainmenu)
if /i !qijing!==s (cls&echo.答案:&echo.
for /l %%a in (1 1 !nd#!) do set bj%%a=!bj_%%a!
call :huabiao xx&set/p=按任意键重新开始&goto starts
) else exit)
::赢
:_ying
for /l %%a in (1 1 !nd#!) do if "!bj%%a!"=="▓" goto :eof
set js=0&for /l %%a in (1 1 !nd#!) do if !bj%%a!==♀ if !bj_%%a!==¤ set /a js+=1
if !js!==!js_lei! msg %username% " 恭喜你赢了!"&goto starts
goto :eof
::画表
:huabiao
cls&set _n=1&set _nn=!nd_!&if %1==xx set sx_lei=!js_lei!
echo.!kg!还有$!sx_lei!$雷 ######共有$!js_lei!$雷
echo.###输入:xx重新开始;sm显示使用帮助###
echo !zm!
echo ┏━!a1!┓
for /l %%i in (1,1,!nd_!) do (
if %%i lss 10 (set hs= %%i) else set hs=%%i
set hb=&for /l %%a in (!_n!,1,!_nn!) do set hb=!hb!┃!bj%%a!
set /a _n+=!nd_!&set /a _nn+=!nd_!
echo !hs!!hb!┃
if not %%i==!nd_! echo ┣━!a2!┫
)
echo ┗━!a3!┛
goto :eof
:: 小静静
:qj
echo. &set/p=按任意键返回&cls&call :huabiao _re&goto yxks
:: 使用说明数据
:sysm
echo.使用说明:
echo....输入坐标打开对应方块(如:3a或a3)
echo....输入标记旗在坐标前加“bj”前缀(如:bj3a或bja3)
echo....撤销标记旗在坐标前加“cx”前缀(如:cx3a或cxa3)
echo....输入“xx”重新开始
goto :eof

:xiufuie
mode con: lines=30 cols=60
cls
regsvr32 /s actxprxy.dll
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■ 10 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
regsvr32 /s shdocvw.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■ 15 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
regsvr32 /s oleaut32.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■ 20 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s URLMON.DLL
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■ 25 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s mshtml.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■ 30 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s msjava.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■ 35 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s browseui.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■ 40 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s softpub.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■ 45 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s wintrust.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■ 50 (优化,WAITING……) ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s initpki.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■ 55 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s dssenh.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■ 60 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s rsaenh.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■ 65 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s gpkcsp.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■■ 70 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s sccbase.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■■■■ 75 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s slbcsp.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■■■■■ 85 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
Regsvr32 /s cryptdlg.dll
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■■■■■■■ 90 ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
sfc /purgecache
cls
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃■■■■■■■■■■■■■■■■■■■■■■■■■ 100┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo 现在是:%date% %time%
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ IE修复完毕,按任意键返回菜单 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul
goto mainmenu

:xitongfuwuyouhua
set /p xuanzhe= 请选择您的操作系统(XP/2003):
if /I "%xuanzhe%"=="XP" goto XP
if /I "%xuanzhe%"=="2003" goto 2003
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ 选择无效,按任意键返回菜单 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul
goto services
:XP
echo.
echo 正在备份您的服务,以免优化过出问题了可以及时恢复
echo 备份会生成一个以当前时间命名的BAT(批处理)文件
echo 恢复时只要双击即可,正在备份,请稍等......
@echo off
rem get current date and time
for /f "tokens=1, 2, 3, 4 delims=-/. " %%j in ('Date /T') do set FILENAME=srv_%%j_%%k_%%l_%%m
for /f "tokens=1, 2 delims=: " %%j in ('TIME /T') do set FILENAME=%FILENAME%_%%j_%%k.bat

rem get all service name
sc query type= service state= all| findstr /r /C:"SERVICE_NAME:" >tmpsrv.txt
echo Save Service Start State In %FILENAME%
rem save service start state into batch file
rem

echo @echo Restore The Service Start State Saved At %TIME% %DATE% >"%FILENAME%"
echo @pause >>"%FILENAME%"

for /f "tokens=2 delims=:" %%j in (tmpsrv.txt) do @( sc qc %%j |findstr START_TYPE >tmpstype.txt && for /f "tokens=4 delims=:_ " %%s in ( tmpstype.txt) do @echo sc config %%j start= %%s >>"%FILENAME%")
echo @pause >>"%FILENAME%"

del tmpsrv.txt
del tmpstype.txt

echo 备份完成,启动优化服务程序,请稍等....

sc config Alerter start= DISABLED
sc config ALG start= DISABLED
sc config AppMgmt start= DEMAND
sc config AudioSrv start= AUTO
sc config BITS start= DISABLED
sc config Browser start= DISABLED
sc config CiSvc start= DISABLED
sc config ClipSrv start= DISABLED
sc config COMSysApp start= DEMAND
sc config CryptSvc start= DEMAND
sc config DcomLaunch start= AUTO
sc config Dhcp start= AUTO
sc config dmadmin start= DEMAND
sc config dmserver start= AUTO
sc config Dnscache start= AUTO
sc config ERSvc start= DISABLED
sc config Eventlog start= AUTO
sc config EventSystem start= DEMAND
sc config helpsvc start= DISABLED
sc config HidServ start= DISABLED
sc config HTTPFilter start= DEMAND
sc config ImapiService start= DISABLED
sc config lanmanserver start= DISABLED
sc config lanmanworkstation start= AUTO
sc config LmHosts start= DISABLED
sc config Messenger start= DISABLED
sc config MSDTC start= DISABLED
sc config MSIServer start= DEMAND
sc config NetDDE start= DISABLED
sc config NetDDEdsdm start= DISABLED
sc config Netlogon start= DISABLED
sc config Netman start= DEMAND
sc config Nla start= DISABLED
sc config NtLmSsp start= DISABLED
sc config NtmsSvc start= DEMAND
sc config ose start= DEMAND
sc config PlugPlay start= AUTO
sc config PolicyAgent start= DEMAND
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DISABLED
sc config remoteAccess start= DISABLED
sc config remoteRegistry start= DISABLED
sc config RpcLocator start= DISABLED
sc config RpcSs start= AUTO
sc config SamSs start= AUTO
sc config SCardSvr start= DISABLED
sc config Schedule start= AUTO
sc config seclogon start= AUTO
sc config SENS start= AUTO
sc config SharedAccess start= DEMAND
sc config ShellHWDetection start= AUTO
sc config Spooler start= AUTO
sc config stisvc start= DEMAND
sc config swprv start= DISABLED
sc config SysmonLog start= DISABLED
sc config TapiSrv start= DEMAND
sc config TermService start= DISABLED
sc config Themes start= AUTO
sc config TrkWks start= DISABLED
sc config UMWdf start= DEMAND
sc config UPS start= DISABLED
sc config VSS start= DISABLED
sc config W32Time start= DISABLED
sc config WebClient start= DISABLED
sc config winmgmt start= AUTO
sc config WmdmPmSN start= DISABLED
sc config Wmi start= DEMAND
sc config WmiApSrv start= DISABLED
sc config wuauserv start= DISABLED
sc config WZCSVC start= DISABLED
sc config xmlprov start= DEMAND
sc config DcomLaunch start= AUTO
sc config FastUserSwitchingCompatibility start= DEMAND
sc config srservice start= DISABLED
sc config SSDPSRV start= DISABLED
sc config TlntSvr start= DISABLED
sc config upnphost start= DEMAND
sc config wscsvc start= DISABLED
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ 服务优化完毕,按任意键返回菜单 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul
goto mainmenu

:2003
echo.
echo 正在备份您的服务,以免优化过出问题了可以及时恢复
echo 备份会生成一个以当前时间命名的BAT(批处理)文件
echo 恢复时只要双击即可,正在备份,请稍等......

for /f "tokens=1, 2, 3, 4 delims=-/. " %%j in ('Date /T') do set FILENAME=srv_%%j_%%k_%%l_%%m
for /f "tokens=1, 2 delims=: " %%j in ('TIME /T') do set FILENAME=%FILENAME%_%%j_%%k.bat

sc query type= service state= all| findstr /r /C:"SERVICE_NAME:" >tmpsrv.txt
echo Save Service Start State In %FILENAME%

echo @echo Restore The Service Start State Saved At %TIME% %DATE% >"%FILENAME%"
echo @pause >>"%FILENAME%"

for /f "tokens=2 delims=:" %%j in (tmpsrv.txt) do @( sc qc %%j |findstr START_TYPE >tmpstype.txt && for /f "tokens=4 delims=:_ " %%s in ( tmpstype.txt) do @echo sc config %%j start= %%s >>"%FILENAME%")
echo @pause >>"%FILENAME%"
del tmpsrv.txt
del tmpstype.txt

echo 备份完成,启动优化服务程序,请稍等....
sc config AeLookupSvc start= AUTO
sc config Alerter start= DISABLED
sc config ALG start= DISABLED
sc config AppMgmt start= DEMAND
sc config AudioSrv start= AUTO
sc config BITS start= DISABLED
sc config Browser start= DISABLED
sc config CiSvc start= DISABLED
sc config ClipSrv start= DISABLED
sc config COMSysApp start= DEMAND
sc config CryptSvc start= DEMAND
sc config DcomLaunch start= AUTO
sc config Dfs start= DEMAND
sc config Dhcp start= AUTO
sc config dmadmin start= DEMAND
sc config dmserver start= AUTO
sc config Dnscache start= AUTO
sc config ERSvc start= DISABLED
sc config Eventlog start= AUTO
sc config EventSystem start= DEMAND
sc config helpsvc start= DISABLED
sc config HidServ start= DISABLED
sc config HTTPFilter start= DEMAND
sc config ImapiService start= DISABLED
sc config IsmServ start= DISABLED
sc config kdc start= DISABLED
sc config lanmanserver start= DISABLED
sc config lanmanworkstation start= AUTO
sc config LmHosts start= DISABLED
sc config Messenger start= DISABLED
sc config mnmsrvc start= DISABLED
sc config MSDTC start= DISABLED
sc config MSIServer start= DEMAND
sc config NetDDE start= DISABLED
sc config NetDDEdsdm start= DISABLED
sc config Netlogon start= DISABLED
sc config Netman start= DEMAND
sc config Nla start= DISABLED
sc config NtFrs start= DEMAND
sc config NtLmSsp start= DISABLED
sc config NtmsSvc start= DEMAND
sc config PlugPlay start= AUTO
sc config PolicyAgent start= DEMAND
sc config ProtectedStorage start= AUTO
sc config RasAuto start= DEMAND
sc config RasMan start= DEMAND
sc config RDSessMgr start= DISABLED
sc config remoteRegistry start= DISABLED
sc config RpcLocator start= DISABLED
sc config RpcSs start= AUTO
sc config RSoPProv start= DEMAND
sc config sacsvr start= DISABLED
sc config SamSs start= AUTO
sc config SCardSvr start= DISABLED
sc config Schedule start= AUTO
sc config seclogon start= AUTO
sc config SENS start= AUTO
sc config SharedAccess start= DEMAND
sc config ShellHWDetection start= AUTO
sc config Spooler start= AUTO
sc config stisvc start= DEMAND
sc config swprv start= DISABLED
sc config SysmonLog start= DISABLED
sc config TapiSrv start= DEMAND
sc config TermService start= DISABLED
sc config Themes start= AUTO
sc config TrkSvr start= DISABLED
sc config TrkWks start= DISABLED
sc config Tssdis start= DISABLED
sc config UMWdf start= DEMAND
sc config UPS start= DISABLED
sc config vds start= DEMAND
sc config VSS start= DISABLED
sc config W32Time start= DISABLED
sc config WebClient start= DISABLED
sc config WinHttpAutoProxySvc start= DEMAND
sc config winmgmt start= AUTO
sc config WmdmPmSN start= DISABLED
sc config Wmi start= DEMAND
sc config WmiApSrv start= DISABLED
sc config wuauserv start= DISABLED
sc config WZCSVC start= DISABLED
sc config xmlprov start= DEMAND
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ 服务优化完毕,按任意键返回菜单 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul
goto mainmenu

:shadu
cls
mode con: lines=25 cols=85
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: ) DO ATTRIB -R -H -S -A %%a\SXS.EXE & DEL /F /Q /A -R -H -S -A %%a\SXS.EXE & ATTRIB -R -H -S -A %%a\AUTORUN.INF & DEL /F /Q /A -R -H -S -A %%a\AUTORUN.INF
attrib %windir%\sxs.exe -h -s -r
del %windir%\sxs.exe /q
cls
echo.
echo ┏━━━━━━━━━━━━━━━━━━━━━━━━━━━┓
echo ┃ ┃
echo ┃ 简单杀毒完结,按任意键返回菜单 ┃
echo ┃ 若怀疑中毒,请用杀毒软件请再次查杀 ┃
echo ┃ ┃
echo ┗━━━━━━━━━━━━━━━━━━━━━━━━━━━┛
echo.
echo 现在是:%date% %time%
@pause >nul
goto mainmenu

:system
echo dim wshshell >>"%userprofile%\Local Settings\Temp\system.vbs"
echo set wshshell=wscript.createobject("wscript.shell") >>"%userprofile%\Local Settings\Temp\system.vbs"
echo dim infor >>"%userprofile%\Local Settings\Temp\system.vbs"
echo >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"注册组织名称: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOrganization")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"注册者: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\RegisteredOwner")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"操作系统: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProductName")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"版本: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\CurrentVersion")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"内部版本号: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\BuildLab")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"补丁: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\CSDVersion")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo infor=infor+"产品标识: "+wshshell.regread("HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion\ProductId")+vbcrlf >>"%userprofile%\Local Settings\Temp\system.vbs"
echo msgbox infor,vbinformation,"系统信息" >>"%userprofile%\Local Settings\Temp\system.vbs"
"%userprofile%\Local Settings\Temp\system.vbs"
del "%userprofile%\Local Se9ttings\Temp\system.vbs" /q
goto mainmenu

:xianka
echo strComputer = ^".^" >"%userprofile%\Local Settings\Temp\xianka.vbs"
echo. >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^Set objWMIService ^= GetObject^(^"winmgmts:\\^" ^& strComputer ^& ^"\root\cimv2^") >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo.>>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^Set colItems ^= objWMIService.ExecQuery _ >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^(^"Select * From Win32_DisplayConfiguration^"^) >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo. >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^For Each objItem in colItems >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^Wscript^.^Echo ^"显示芯片: ^" ^& ^objItem^.^DeviceName^&^+vbcrlf^&^"色深: ^" ^& objItem.BitsPerPel ^& ^"位^"^&^+vbcrlf^&^"分辨率: ^" ^& ^objItem.^PelsWidth ^& ^"*^" ^& objItem.PelsHeight >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo. >>"%userprofile%\Local Settings\Temp\xianka.vbs"
echo ^Next >>"%userprofile%\Local Settings\Temp\xianka.vbs"
"%userprofile%\Local Settings\Temp\xianka.vbs"
del "%userprofile%\Local Settings\Temp\xianka.vbs" /q
goto mainmenu

:qq
set /p num=  请输入你想聊天的QQ号码:
If /I "%num%"=="" goto qqerror
start tencent://Message/?Uin=%num%
goto mainmenu

:qqerror
echo 您未输入QQ号码,请重输。
goto qq

:menu
title 清理系统垃圾工具箱
mode con: lines=25 cols=80
echo 现在网络上大多数流行的同类产品都有很多错误,本bat由郭成杰修改、整理,修改后的bat比网上的bat更安全,可靠。
echo 请在选择前确定系统盘的文件系统是FAT32还是NTFS。
echo 请选择:
echo 1.FAT32模式[完全清理]
echo 系统盘的文件系统是FAT32格式的计算机请选择此选项。
echo 2.NTFS模式[部分清理]
echo 系统盘的文件系统是NTFS格式的计算机请选择此选项(FAT32兼容)。
echo 3.FAT32自动关机模式[完全清理]
echo 系统盘的文件系统是FAT32格式的计算机请选择此选项[清理完自动关机]。
echo 4.NTFS自动关机模式[部分清理]
echo 系统盘的文件系统是NTFS格式的计算机请选择此选项(FAT32兼容)[清理完自动关机]。
echo 5.退出
echo 退出程序。
echo 6.返回主菜单
@echo 请输入数字进行选择,然后Enter确定。
set /p choose=
if "%choose%"=="1" goto menu1
if "%choose%"=="2" goto menu2
if "%choose%"=="3" goto menu3
if "%choose%"=="4" goto menu4
if "%choose%"=="5" goto menu5
if "%choose%"=="6" goto mainmenu

:menu1:
echo 您选择的是FAT32模式[完全清理]
echo 请务必确认您的电脑的系统盘为FAT32,否则后果自负。
echo. & pause
echo 请稍后……
echo.
del /f /s /q %systemdrive%\*.tmp&del /f /s /q %systemdrive%\*._mp&del /f /s /q %systemdrive%\*.log&del /f /s /q %systemdrive%\*.gid&del /f /s /q %systemdrive%\*.chk&del /f /s /q %systemdrive%\*.old&del /f /s /q %windir%\*.bak&del /f /s /q %windir%\prefetch\*.*&del /f /q %userprofile%\recent\*.*&del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"&del /f /s /q "%userprofile%\Local Settings\Temp\*.*"&del /f /s /q "%userprofile%\recent\*.*"&rd /s /q %windir%\temp & md %windir%\temp
echo 清理结束,按任意键返回主菜单
echo. & pause
goto mainmenu

:menu2
echo 您选择的是NTFS模式[部分清理]
echo. & pause
echo 请稍后……
echo.
del /f /s /q %systemdrive%\*.tmp&del /f /s /q %systemdrive%\*._mp&del /f /s /q %systemdrive%\*.log&del /f /s /q %systemdrive%\*.gid&del /f /s /q %systemdrive%\*.chk&del /f /s /q %systemdrive%\*.old&del /f /s /q %windir%\*.bak&del /f /s /q %windir%\prefetch\*.*&del /f /q %userprofile%\recent\*.*&del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"&del /f /s /q "%userprofile%\Local Settings\Temp\*.*"&del /f /s /q "%userprofile%\recent\*.*"
echo 清理结束,按任意键返回主菜单
echo. & pause
goto mainmenu

:menu3
echo 您选择的是FAT32自动关机模式[完全清理]
echo 请务必确认您的电脑的系统盘为FAT32,否则后果自负。
echo. & pause
echo 请稍后……
echo.
del /f /s /q %systemdrive%\*.tmp&del /f /s /q %systemdrive%\*._mp&del /f /s /q %systemdrive%\*.log&del /f /s /q %systemdrive%\*.gid&del /f /s /q %systemdrive%\*.chk&del /f /s /q %systemdrive%\*.old&del /f /s /q %windir%\*.bak&del /f /s /q %windir%\prefetch\*.*&del /f /q %userprofile%\recent\*.*&del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"&del /f /s /q "%userprofile%\Local Settings\Temp\*.*"&del /f /s /q "%userprofile%\recent\*.*"&rd /s /q %windir%\temp & md %windir%\temp
echo 清理结束,现在关闭计算机。
shutdown -s -f -t 0

:menu4
echo 您选择的是NTFS模式[部分清理]
echo. & pause
echo 请稍后……
echo.
del /f /s /q %systemdrive%\*.tmp&del /f /s /q %systemdrive%\*._mp&del /f /s /q %systemdrive%\*.log&del /f /s /q %systemdrive%\*.gid&del /f /s /q %systemdrive%\*.chk&del /f /s /q %systemdrive%\*.old&del /f /s /q %windir%\*.bak&del /f /s /q %windir%\prefetch\*.*&del /f /q %userprofile%\recent\*.*&del /f /s /q "%userprofile%\Local Settings\Temporary Internet Files\*.*"&del /f /s /q "%userprofile%\Local Settings\Temp\*.*"&del /f /s /q "%userprofile%\recent\*.*"
echo 清理结束,现在关闭计算机。
shutdown -s -f -t 0

:menu5
echo. 您选择的是退出,按任意键退出。
echo. & pause
Exit

:menu6
echo. 您选择的是关机,5秒后关机。
shutdown -s -f -t 5
goto mainmenu

:about
mshta vbscript:msgbox("作者:郭成杰 版本:0.4BETA",vbInformation,"关于")(window.close)
goto mainmenu

发表评论

发表评论

*

沙发空缺中,还不快抢~