![]() |
中国DOS联盟-- 联合DOS 推动DOS 发展DOS --联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum |
| 游客 | 登录 | 注册 | 会员 | 搜索 | 中国DOS联盟 |
|
中国DOS联盟论坛 现在时间是 2026-08-13 02:51 |
共 47,811 主题排行 / 349,897 发帖 / 今日 0 篇 / 48,256 会员排行 |
| DOS批处理 & 脚本技术(批处理室) » [已解决]如何判断注册表特定位置是否存在特定键值 |
| 可打印版本 1,503 / 4 |
| 第1楼 renol | 发表于 2009-12-30 11:11 |
| 初级用户 发帖 17 积分 22 | |
|
[已解决]如何判断注册表特定位置是否存在特定键值 自己写了个批处理,针对某个软件进行设置
需要先判断该机器是否安装了这个软件 是的话继续操作,不是的话提示该机未装软件,不需要运行此批处理 以QQ为例 可以根据注册表中 HKLM\SOFTWARE\TENCENT\QQ 下的 Install键值获取QQ的安装目录 现在需要判断 Install 键是否存在,存在则 goto task,不存在则 goto :eof 另想问问,如果存在,且值非空,则goto task ,为空则 goto :eof 知识有限,还请大家帮忙 :)
[ Last edited by renol on 2010-1-5 at 14:38 ] |
|
| 第2楼 renol | 发表于 2010-01-05 11:45 |
| 初级用户 发帖 17 积分 22 | |
|
修改了一下标题,希望不会误导热心的朋友
顶起来看看 |
|
| 第3楼 renol | 发表于 2010-01-05 12:58 |
| 初级用户 发帖 17 积分 22 | |
|
参考lxmxn在其他朋友的帖子中贴出的解决办法,以及忘记某位仁兄的找到收藏夹的所在位置的方法,结合了一下
凑合解决了自己的问题: @ECHO OFF 不过有个麻烦,参数/nt4 的作用 在XP下,有这个参数才能成功执行命令,才能判断正确 Windows 2003 不支持reg export 的参数 /nt4 ,始终无法判断正确 避免使用参数 /nt4 @echo off &setlocal enabledelayedexpansion [ Last edited by renol on 2010-1-5 at 14:15 ] |
|
| 第4楼 qinchun36 | 发表于 2010-01-05 13:32 |
| 高级用户 发帖 400 积分 609 | |
|
那就用最笨的方法嘛:
第一步:执行查询,如果不存在的话会出错,根据 errorlevel 就能判断了撒; 第二步:如果没报错就再执行一次,取出那个值看看是不是空的; 第三步:如果不是空的再跳到 task。 |
|
| 第5楼 renol | 发表于 2010-01-05 14:33 |
| 初级用户 发帖 17 积分 22 | |
|
很感谢4楼 qinchun36 的解决方法
我之前也看到有人用errorlevel来判断,自己尝试用它实现判断,但是总是失败 你的方法很好,也能实现判断,这里我学习了!! 不仅判断了是否存在,还判断了是否空值,很好很好 :) 呵呵,看来我不着急解决问题的时候,要多找点时间系统的学学基础知识啊!! [ Last edited by renol on 2010-1-5 at 14:34 ] |
|
|
[ 联系联盟系统管理团队 -
中国DOS联盟 -
标准版 ] Sponsored by ifanr Inc | © 2001–2023 |