Board logo

标题: 如何给注册表批量添加键值和数据? [打印本页]

作者: 5872169     时间: 2008-3-14 09:29    标题: 如何给注册表批量添加键值和数据?
如何给注册表批量添加键值和数据?以下是我写的代码请高手修改一下!但无法写入数据,如果数据类型为REG_DWORD应该怎么写?
set regpth="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows

NT\CurrentVersion\Image File Execution Options\CoralQQ.exe"
for %%i in (Debugger DisableHeapLookAside) do reg add %regpth% /f /v

"%%i"

Last edited by 5872169 on 2008-3-14 at 09:34 AM ]

作者: huahua0919     时间: 2008-3-14 10:29
for %%i in (Debugger DisableHeapLookAside) do reg add %regpth% /v "%%i" /t REG_DWORD /d ... /f

作者: suntb     时间: 2008-3-14 10:57
楼主set的变量怎么断成好几截了?

作者: 5872169     时间: 2008-3-14 11:11
suntb,可能是粘贴的原因

作者: 5872169     时间: 2008-3-14 11:19
huahua0919,无法通过测试,数据无法写入,你看我写的有问题吗
set regpth="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\CoralQQ.exe"
for %%i in (Debugger DisableHeapLookAside) do reg add %regpth% /v "%%i" /t REG_DWORD /d D:\安装程序\垃圾清理.bat 1 /f

Debugger的数据是:"D:\安装程序\垃圾清理.bat",DisableHeapLookAside的数据是:"1"

Last edited by 5872169 on 2008-3-14 at 11:27 AM ]

作者: huahua0919     时间: 2008-3-14 11:31
你上面写的是错误的!现在有事回不了!

作者: HAT     时间: 2008-3-14 11:35
Debugger的数据是:"D:\安装程序\垃圾清理.bat",DisableHeapLookAside的数据是:"1"
====================
/d开关后面只能跟一个参数,也就是说一条reg add命令无法同时给两个变量赋值。写两条reg add命令不行吗,何必一定要用for呢?

作者: suntb     时间: 2008-3-14 11:42
Originally posted by HAT at 2008-3-14 11:35:
Debugger的数据是:"D:\安装程序\垃圾清理.bat",DisableHeapLookAside的数据是:"1"
====================
/d开关后面只能跟一个参数,也就是说一条 ...


如果只有两个添加的数据 还是分开写就好了 

作者: 5872169     时间: 2008-3-14 11:45
我是想方便一点,感觉一条一条的写太麻烦!

作者: suntb     时间: 2008-3-14 12:19
Originally posted by 5872169 at 2008-3-14 11:45:
我是想方便一点,感觉一条一条的写太麻烦!


如果添加的数据相同的话用FOR比较适合

如果要添加不同的数据用FOR可能效率更低

作者: 5872169     时间: 2008-8-10 19:36
我就是想添加相同的数据

作者: HAT     时间: 2008-8-11 01:43
@echo off
set regpth="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\CoralQQ.exe"
for %%i in (Debugger DisableHeapLookAside) do (
if "%%i" equ "Debugger" (
reg add %regpth% /v "%%i" /t REG_DWORD /d D:\安装程序\垃圾清理.bat /f
) else if "%%i" equ "DisableHeapLookAside" (
reg add %regpth% /v "%%i" /t REG_DWORD /d 1 /f
)
)

作者: HAT     时间: 2008-8-11 01:46
@echo off
set regpth="HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\CoralQQ.exe"
for %%i in (Debugger DisableHeapLookAside) do (
if "%%i" equ "Debugger" (
set data=D:\安装程序\垃圾清理.bat
) else if "%%i" equ "DisableHeapLookAside" (
set data=1
)
reg add %regpth% /v "%%i" /t REG_DWORD /d %data% /f
)