标题: [注册表类] [已解决]批处理如何判断指定注册表是否存在某个键值? [打印本页]
作者: h0x0x0 时间: 2010-4-29 08:38 标题: [已解决]批处理如何判断指定注册表是否存在某个键值?
纯粹小白,没基础,要用到才到处找。搜索了论坛,没能找到相关的,请路过的朋友指点下,如果能说明的清楚点那就更感激了。以下是我想实现的内容,尽量表达清楚。
我想通过查看 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 对应启动项下有没有QQ.exe这个启动项(随便选的,不针对),如果有则干什么,没有,干什么。
我的意思其实就是 通过判断注册表中是否存在一个键值 比方说的那个 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 下的 QQ.exe 如果存在就退出 不存在则添加 不是简单的判断它存在不存在 也不是可以重复添加 而是要做出准确判断 而且不能重复添加 如果只是为了添加可以直接添加 不进行准确判断也没事了 QQ.exe只是举个例子
[ 本帖最后由 h0x0x0 于 2010-4-29 22:13 编辑 ]
作者: h0x0x0 时间: 2010-4-29 15:57
等了一天了都没人愿意帮助 是我问的问题太简单不屑回答吗
实在不愿意回答给个详细的参考地址也好啊
作者: gshccr 时间: 2010-4-29 17:00
@echo off
reg query HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /v QQ.exe>nul 2>nul&&echo 存在QQ.exe||echo 不存在QQ.exe
pause>nul
作者: gshccr 时间: 2010-4-29 17:26
是这样吗?
@echo off
reg delete HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run /f /v "QQ.exe"||exit
pause>nul
作者: gshccr 时间: 2010-4-29 18:56
如果问题已解决,请楼主给标题标注已解决字样!谢谢!
作者: h0x0x0 时间: 2010-4-29 19:57
我的意思其实就是 通过判断注册表中是否存在一个键值 比方说的那个 HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run 下的 QQ.exe 如果存在就退出 不存在则添加 不是简单的判断它存在不存在 也不是可以重复添加 而是要做出准确判断 而且不能重复添加 如果只是为了添加可以直接添加 不进行准确判断也没事了 QQ.exe只是举个例子
作者: hanyeguxing 时间: 2010-4-29 20:13
1,直接添加或重复添加会产生什么问题吗?
2,楼主太缺乏举一反三了。
3,参考hh C:\WINDOWS\Help\ntcmds.chm::/reg.htm或reg /?
- set "han="HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Run" /v "QQ.exe""
- reg query %han%>nul 2>nul||reg add %han% /d "需要的字符串值" /f
复制代码
[ 本帖最后由 hanyeguxing 于 2010-4-29 20:21 编辑 ]
作者: h0x0x0 时间: 2010-4-29 21:33
感谢 gshccr 朋友的帮助 在他的帮助下已经实现目的。
[ 本帖最后由 h0x0x0 于 2010-4-29 22:12 编辑 ]
欢迎光临 批处理之家 (http://www.bathome.net/) |
Powered by Discuz! 7.2 |