标题: 批处理清空注册表启动项?
[打印本页]
作者: jfq668899
时间: 2010-4-24 03:54
标题: 批处理清空注册表启动项?
批处理清空注册表启动项,但要忽略某一项键值不需要删除,请高手帮忙看看如何编写,(注意:不是要那种清空完再加上去的)
[
Last edited by jfq668899 on 2010-4-25 at 17:30 ]
作者: Hanyeguxing
时间: 2010-4-24 10:46
@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do set "a=%%a"&if "!a:~0,1!"==" " for /f "delims=这里是一个tab制表符" %%b in ("%%a") do set "b=%%b"&set "@!b:~4!#=="
for %%a in (NvCplDaemon NvMediaCenter) do set "@%%a#="
for /f "delims=@#" %%a in ('set @') do echo.reg delete "%h%" /v "%%a" /f
pause
1,for %%a in (NvCplDaemon NvMediaCenter) do set "@%%a#="用来设置排除的键名,如果只有一个,可以写成set "@键名#="
2,测试正常后,删除for /f "delims=@#" %%a in ('set @') do echo.reg delete "%h%" /v "%%a" /f中的echo.和pause以正常运行。
3,运行前请先备份注册表相关项。
[
Last edited by Hanyeguxing on 2010-4-24 at 10:55 ]
作者: jfq668899
时间: 2010-4-25 16:53
标题: 测试不成功
总共4个键值,麻烦你再帮忙看看。谢谢了哥
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v 360sd /d "\"D:\\360杀毒\\360sd.exe\" /autorun" /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v Bbclock /d D:\\Portable\\桌面时钟\\BBClock.exe /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v YzDock /d D:\\Portable\\YzDock\\YzDock.exe /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v DMHotKey /d C:\\Program Files\\Samsung\\Easy Display Manager\\DMLoader.exe /f
作者: jfq668899
时间: 2010-4-25 16:57
标题: 测试不成功
Quote: |
Originally posted by Hanyeguxing at 2010-4-24 10:46 AM:
[code]@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do ... |
|
总共4个键值,麻烦你再帮忙看看。谢谢了哥
REG ADD HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v 360sd /d "\"D:\\360杀毒\\360sd.exe\" /autorun" /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v Bbclock /d D:\\Portable\\桌面时钟\\BBClock.exe /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v YzDock /d D:\\Portable\\YzDock\\YzDock.exe /f
REG ADD HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v DMHotKey /d C:\\Program Files\\Samsung\\Easy Display Manager\\DMLoader.exe /f
作者: Hanyeguxing
时间: 2010-4-25 18:04
测试不成功的话,把echo的信息贴出来
作者: jfq668899
时间: 2010-4-26 18:00
标题: 小弟是菜鸟,不知道哪里改错了
Quote: |
Originally posted by Hanyeguxing at 2010-4-25 06:04 PM:
测试不成功的话,把echo的信息贴出来 |
|
@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do set "a=%%a"&if "!a:~0,1!"==" " for /f "delims=这里是一个tab制表符" %%b in ("%%a") do set "b=%%b"&set "@!b:~4!#=="
for %%a in (NvCplDaemon NvMediaCenter) do set "@%%a#="360sd,Bbclock,YzDock,DMHotKey
for /f "delims=@#" %%a in ('set @') do reg delete "%h%" /v "%%a" /f
启动项下什么也没删除(忽略项和不忽略都没删除)
作者: Hanyeguxing
时间: 2010-4-26 21:03
@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do set "a=%%a"&if "!a:~0,1!"==" " for /f "delims= " %%b in ("%%a") do set "b=%%b"&set "@!b:~4!#=="&>>c:\测试.txt echo.!b!
1,把"delims= "中的连续空格改成一个制表符
2,把c:\测试.txt的内容贴出来
作者: jfq668899
时间: 2010-4-26 22:16
标题: 大哥谢谢你,学习了
Quote: |
Originally posted by Hanyeguxing at 2010-4-26 09:03 PM:
[code]@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do ... |
|
不过不懂什么是制表符
作者: jfq668899
时间: 2010-4-26 22:27
标题: 大哥,能不能做个现成的,小弟真的不懂
Quote: |
Originally posted by Hanyeguxing at 2010-4-26 09:03 PM:
[code]@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do ... |
|
要改的两项都不会,也不懂,帮帮小弟
作者: jfq668899
时间: 2010-4-26 22:59
标题: 我的想法就是↓
Quote: |
Originally posted by Hanyeguxing at 2010-4-26 09:03 PM:
[code]@echo off&setlocal enabledelayedexpansion
set "h=HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run"
for /f "skip=4 delims=" %%a in ('reg query "%h%"') do ... |
|
HKCU\Software\Microsoft\Windows\CurrentVersion\Run /v 360sd /d "\"D:\\360杀毒\\360sd.exe\" /autorun"
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v Bbclock /d D:\\Portable\\桌面时钟\\BBClock.exe
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v YzDock /d D:\\Portable\\YzDock\\YzDock.exe
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v DMHotKey /d C:\\Program Files\\Samsung\\Easy Display Manager\\DMLoader.exe
在注册表启动项里,有几个项时不要删除,其它的全删。
启动项里没这几项不要添加进去。
作者: Hanyeguxing
时间: 2010-4-27 17:05
使用附件里的批处理
附件
1:
129.zip (2010-4-27 17:05, 402 bytes, 下载附件所需积分 1点
,下载次数: 25)
作者: jfq668899
时间: 2010-4-27 23:43
标题: 大哥,特别崇拜和感谢你!!!
Quote: |
Originally posted by Hanyeguxing at 2010-4-27 05:05 PM:
使用附件里的批处理 |
|
测试成功,但不知为什么? 会提示: 环境变量 @ 没有定义
作者: Hanyeguxing
时间: 2010-4-28 00:05
把c:\测试.txt的内容贴出来
作者: jfq668899
时间: 2010-4-28 11:25
标题: 哥,谢谢!兄弟这么麻烦你,你还....,真的谢谢了
Quote: |
Originally posted by Hanyeguxing at 2010-4-28 12:05 AM:
把c:\测试.txt的内容贴出来 |
|
c:\测试.txt的内容是空的,不过我想,还是不要生成那个"测试.txt",太难看,有没有其它办法解决,哥再想想办法
作者: Hanyeguxing
时间: 2010-4-28 17:20
把 set @ >c:\测试.txt 那一行删除,那是测试用的
作者: jfq668899
时间: 2010-4-29 09:39
标题: 哥最后麻烦你一次,再下去我都不好意思了
Quote: |
Originally posted by Hanyeguxing at 2010-4-28 05:20 PM:
把 set @ >c:\测试.txt 那一行删除,那是测试用的 |
|
set @ >c:\测试.txt 那一行已经删除,但是环境变量 @ 没有定义 还是存在,怎么办了,谢谢 !最后问一个问题:能QQ上加个好友吗