标题: 怎么实现自动查找注册表的某个键值
[打印本页]
作者: lzys
时间: 2007-5-23 04:01
标题: 怎么实现自动查找注册表的某个键值
我想修改注册表
HKEY_USERS\S-1-5-21-746137067-602162358-725345543-500\Software\Microsoft\Windows\CurrentVersion\Internet Settings\Lockdown_Zones\0
"DisplayName"="自己的名字"
但这个键值好像在每个系统中都不一样。。。我要怎么写才能自动找到这个键值呢?????请高手帮忙
[
Last edited by lzys on 2007-5-23 at 04:21 AM ]
作者: bjsh
时间: 2007-5-23 09:48
试试这个行不:
因为S-1-5-21-746137067-602162358-725345543-500在每台电脑里都不一样;
我用'reg query HKU^|findstr /v "_Classes"^|findstr "S-1-5-21"'
取得;应该具有较好的通用性;不过没有测试过;
@echo off
for /f %%a in ('reg query HKU^|findstr /v "_Classes"^|findstr "S-1-5-21"') do (
reg query %%a\Software\Microsoft\Windows\CurrentVersion\\"Internet Settings"\Lockdown_Zones\0 /v DisplayName
)
这里我只是 reg query并没有修改他;
想要修改的话;
参考上面的代码和reg /?自行修改.
作者: lzys
时间: 2007-5-23 15:47
晕了,我可能是太笨了,研究了好半天也没把后面的代码补全。。。斑竹在帮帮忙吧。。。v DisplayName 后面我真的不知道在添加什么代码了
作者: bjsh
时间: 2007-5-23 16:04
提醒reg add /?
把我的reg query改为 reg add 至于格式参考下面;
Windows 控制台注册表工具 - 版本 3.0
版权所有 (C) Microsoft Corp. 1981-2001. 保留所有权利。
REG ADD KeyName [/v ValueName | /ve] [/t Type] [/s Separator] [/d Data] [/f]
KeyName [\\Machine\]FullKey
远程机器的机器名 - 忽略默认到当前机器。
远程机器上只有 HKLM 和 HKU。
FullKey ROOTKEY\SubKey
ROOTKEY [ HKLM | HKCU | HKCR | HKU | HKCC ]
SubKey 所选 ROOTKEY 下注册表项的完整名
/v 所选项之下要添加的值名
/ve 为注册表项添加空白值名<无名称>
/t RegKey 数据类型
[ REG_SZ | REG_MULTI_SZ | REG_DWORD_BIG_ENDIAN |
REG_DWORD | REG_BINARY | REG_DWORD_LITTLE_ENDIAN |
REG_NONE | REG_EXPAND_SZ ]
如果忽略,则采用 REG_SZ
/s 指定一个在 REG_MULTI_SZ 数据字符串中
用作分隔符的字符
如果忽略,则将 "\0" 用作分隔符
/d 要分配给添加的注册表 ValueName 的数据
/f 不用提示就强行改写现有注册表项