找回密码
 注册
搜索
[新手上路]批处理新手入门导读[视频教程]批处理基础视频教程[视频教程]VBS基础视频教程[批处理精品]批处理版照片整理器
[批处理精品]纯批处理备份&还原驱动[批处理精品]CMD命令50条不能说的秘密[在线下载]第三方命令行工具[在线帮助]VBScript / JScript 在线参考
查看: 25095|回复: 6

[注册表类] 【已解决】请问如何查找注册表内的关键字并以此判断程序是否在运行

[复制链接]
发表于 2015-11-21 10:44:12 | 显示全部楼层 |阅读模式
本帖最后由 solan 于 2015-11-21 14:50 编辑

某软件的某个版本运行时在注册表内即时产生如下条目:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\KL\Running Applications]
"KL V26.5 1"=dword:0000c43a
"KL V26.5 2"=dword:0000d4c4
也就是关键字是KL V26.5,后面是序列号,表示同时运行了几个软件,
那么请问如何查找注册表内的关键字KL V26.5并以此判断程序是否在运行呢?
拜托各位说说这个批处理怎么写?谢谢!
 楼主| 发表于 2015-11-21 13:20:57 | 显示全部楼层
本帖最后由 solan 于 2015-11-21 13:24 编辑

如果这样写,查不到
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. ::CODER BY Administrator POWERD BY iBAT
  4. REG QUERY "HKCU\Software\KL\Running Applications" /v "KL V26.5" && @echo KL8.5正在运行。。。
  5. pause
复制代码
如果下面这样写,那么当关掉第一个打开的软件窗口的时候,也就是没有KL V26.5 1这个值了,但是此时可能有KL V26.5 2或者KL V26.5 3等等,
由于查不到KL V26.5 2或KL V26.5 3等等,就提示软件没在运行,其实在运行呢。
  1. @echo off
  2. Setlocal enabledelayedexpansion
  3. ::CODER BY Administrator POWERD BY iBAT
  4. REG QUERY "HKCU\Software\KL\Running Applications" /v "KL V26.5 1" && @echo KL8.5正在运行。。。
  5. pause
复制代码
难不成我要把所有的值都写上吗?如果打开了100个KL8.5软件的窗口,那我岂不是要写到KL V26.5 100了吗?
此处不明,请版主指点一二!!
发表于 2015-11-21 13:59:06 | 显示全部楼层
  1. @echo off
  2. set "s=HKCU\Software\KL\Running Applications"
  3. for /f %%i in ('reg query "%s%"^|findstr /i /r /c:"^ *KL V26\.5 [0-9][0-9]*"^|find /c /v ""')do (
  4.     echo 有 %%i 个程序在运行
  5. )
  6. pause
复制代码
 楼主| 发表于 2015-11-21 14:45:17 | 显示全部楼层
回复 3# WHY

非常感谢,测试成功
 楼主| 发表于 2015-11-21 14:48:39 | 显示全部楼层
本帖最后由 solan 于 2015-11-21 15:36 编辑

不过我不懂括号里面的意思,在哪儿可以学到这些,如果方便的话,请指引一下
发表于 2015-11-21 15:32:13 | 显示全部楼层
回复 5# solan


    建议你学一下 FOR 和 FINDSTR 的用法,搜索本论坛即可得到教程

括弧里的意思是,reg query 的结果通过管道符“|”传给 findstr,findstr 找到以空格开头、后面接 KL V26.5 和数字的行,再通过管道传给 FIND 来统计行数
 楼主| 发表于 2015-11-21 15:35:17 | 显示全部楼层
好复杂,一时搞不明白,去搜索看看,再次感谢,你太给力了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

Archiver|手机版|小黑屋|批处理之家 ( 渝ICP备10000708号 )

GMT+8, 2026-3-18 07:47 , Processed in 0.018360 second(s), 8 queries , File On.

Powered by Discuz! X3.5

© 2001-2026 Discuz! Team.

快速回复 返回顶部 返回列表