[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
返回列表 发帖

帮组看下一个网银盾的批处理

建行的网银盾安装后,有一个自动启动服务WDMonitorCCB和一个自动启动程序WDCertM_CCB.exe,由于网银盾不常用,请人写了个批处理,以关闭这两个东西,请各位给修正一下,
  1. @echo off
  2. :TopStart
  3. Cls
  4. @echo  启动/关闭网银盾
  5. @echo.
  6. @echo.
  7. @echo.
  8. @echo.    1 关闭
  9. @echo.   
  10. @echo.
  11. @echo.    2 开启
  12. @echo.   
  13. @echo.
  14. @set /p choice=请选择相关操作(1,2):
  15. @if /I %choice% == 2 goto dakai
  16. @if /I %choice% == 1 goto guanbi
  17. goto TopStart
  18. :dakai
  19. ::打开
  20. sc config WDMonitorCCB start= auto
  21. sc start WDMonitorCCB
  22. REG ADD HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v wdcertm_ccb /t REG_SZ /d "\"C:\WINDOWS\system32\WatchData\Watchdata CCB CSP v3.2\WDCertM_CCB.exe"" /f
  23. start "" "C:\WINDOWS\system32\WatchData\Watchdata CCB CSP v3.2\WDCertM_CCB.exe"
  24. goto :eof
  25. :guanbi
  26. ::结束
  27. sc config WDMonitorCCB start= disabled
  28. sc stop WDMonitorCCB
  29. tasklist|find /i "WDCertM_CCB.exe"
  30. IF %ERRORLEVEL% == 0 ntsd -c q -pn WDCertM_CCB.exe
  31. ::TASKKILL /IM WDCertM_CCB.exe /F
  32. REG DELETE HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v wdcertm_ccb /f
  33. goto :eof
复制代码

关于是否“已启用”好像是以检测自动启动项是否存在为依据的,

如果换成检测服务是否启动和程序是否运行为依据则更好。。。

TOP

版主,真快,我刚发现,您就回复了

感谢版主

TOP

%wndir%
中间少了

i

TOP

不好意思,%wndir%变量中少打了一个i,应该是%windir%,已修改
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

原帖由 hanyeguxing 于 2011-1-18 18:24 发表
每运行一次就切换一次状态:@echo off
set b=WDMonitorCCB&set w=wdcertm_ccb
set "r=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
set "d=%wndir%\system32\WatchData\Watchdata CCB CSP v3.2\%w%.exe" ...


[attach]3385[/attach]

TOP

年关了,比较忙,没及时回复
出现这个。
[attach]3384[/attach]

TOP

每运行一次就切换一次状态:
  1. @echo off
  2. set b=WDMonitorCCB&set w=wdcertm_ccb
  3. set "r=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
  4. set "d=%windir%\system32\WatchData\Watchdata CCB CSP v3.2\%w%.exe"
  5. reg query "%r%" /v %w% >nul 2>nul&&(
  6.     echo 当前状态:已启用,按任意键进行关闭&pause>nul
  7.     sc config %b% start= disabled
  8.     sc stop %b%
  9.     reg delete "%r%" /v %w% /f
  10.     taskkill /im %w%.exe /f
  11.     goto:eof
  12. )
  13. echo 当前状态:已关闭,按任意键进行启用&pause>nul
  14. sc config %b% start= auto
  15. sc start %b%
  16. reg add "%r%" /v %w% /d "\"%d%\"" /f
  17. start "" "%d%"
复制代码

[ 本帖最后由 hanyeguxing 于 2011-1-19 19:17 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

只是想问问有什么地方可以修改的更好

TOP

回复 1楼 的帖子

reg add 一句中存在错误:
  1. @echo off
  2. set b=WDMonitorCCB
  3. set w=wdcertm_ccb
  4. set "r=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
  5. set "d=%wndir%\system32\WatchData\Watchdata CCB CSP v3.2\%w%.exe"
  6. :TopStart
  7. Cls
  8. echo  启动/关闭网银盾
  9. echo.
  10. echo.
  11. echo.
  12. echo.    1 关闭
  13. echo.   
  14. echo.
  15. echo.    2 开启
  16. echo.   
  17. echo.
  18. set/p choice=请选择相关操作(1,2):
  19. for %%a in (1 2) do if "%%a"=="%choice%" goto:%%a
  20. goto :TopStart
  21. :2:打开
  22. sc config %b% start= auto
  23. sc start %b%
  24. reg add "%r%" /v %w% /d "\"%d%\"" /f
  25. start "" "%d%"
  26. goto:eof
  27. :1:结束
  28. sc config %b% start= disabled
  29. sc stop %b%
  30. reg delete "%r%" /v %w% /f
  31. taskkill /im %w%.exe /f
复制代码

更好的方法就是依靠服务的启动或程序状态来判断操作需要

[ 本帖最后由 hanyeguxing 于 2011-1-18 18:18 编辑 ]
寒夜孤星:在没有说明的情况下,本人所有代码均运行在 XP SP3 下 (有问题请发贴,QQ临时会话已关闭)

TOP

你希望修正什么地方?
我帮忙写的代码不需要付钱。如果一定要给,请在微信群或QQ群发给大家吧。
【微信公众号、微信群、QQ群】http://bbs.bathome.net/thread-3473-1-1.html
【支持批处理之家,加入VIP会员!】http://bbs.bathome.net/thread-67716-1-1.html

TOP

返回列表