中国DOS联盟

-- 联合DOS 推动DOS 发展DOS --

联盟域名:www.cn-dos.net 论坛域名:www.cn-dos.net/forum
DOS,代表着自由开放与发展,我们努力起来,学习FreeDOS和Linux的自由开放与GNU精神,共同创造和发展美好的自由与GNU GPL世界吧!

中国DOS联盟论坛
现在时间是 2026-06-19 02:54
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 如何让使用批处理添加reg的键值???? 查看 2,014 回复 18
楼 主 如何让使用批处理添加reg的键值???? 发表于 2007-06-26 01:10 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
只想修改[HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders]
里的 desktop 为 d:\123 原来是%...%桌面

试了哈下面的
@Echo off
regedit /s regfile.reg
taskkill /im explorer.exe /f
explorer.exe
RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
exit

需要要先有reg文件 才能用 regedit /s 导入 才能添加吗??
能不能直接用1个bat 把注册表键值添加了

运行taskkill /im explorer.exe /f 能不能不让任务栏消失 也能刷新桌面?

我用的bat最后为什么dos窗口还没有关闭

如果能用vbs实现哪更好拉!!!
2 发表于 2007-06-26 02:52 ·  中国 湖北 武汉 电信
版主
★★★★★
积分 11,386
发帖 4,938
注册 2006-07-23 17:10
UID 59080
状态 离线
修改注册表可以用 reg 命令。
3 发表于 2007-06-26 08:56 ·  中国 广东 东莞 电信
新手上路
积分 16
发帖 7
注册 2007-06-25 08:30
UID 92274
性别 男
状态 离线
使用REG ADD命令可以做到~~~~


Windows 控制台注册表工具 - 版权所有 (C) Microsoft Corp. 1981-2001. 保留所有权繰EG ADD KeyName

KeyName FullKey
远程机器的机器名 - 忽略默认到当前机器。
远程机器上只有 HKLM 和 HKU。
FullKey ROOTKEY\SubKey
ROOTKEY
SubKey 所选 ROOTKEY 下注册表项的完整名

/v 所选项之下要添加的值名

/ve 为注册表项添加空白值名<无名称>

/t RegKey 数据类型



如果忽略,则采用 REG_SZ

/s 指定一个在 REG_MULTI_SZ 数据字符串中
用作分隔符的字符
如果忽略,则将 "\0" 用作分隔符

/d 要分配给添加的注册表 ValueName 的数据

/f 不用提示就强行改写现有注册表项

例如:

REG ADD \\ABC\HKLM\Software\MyCo
添加远程机器 ABC 上的一个注册表项 HKLM\Software\MyCo

REG ADD HKLM\Software\MyCo /v Data /t REG_BINARY /d fe340ead
添加一个值(名称: Data,类型: REG_BINARY,数据: fe340ead)

REG ADD HKLM\Software\MyCo /v MRU /t REG_MULTI_SZ /d fax\0mail
添加一个值(名称: MRU,类型: REG_MUTLI_SZ,数据: fax\0


[ Last edited by recooliu on 2007-6-26 at 09:04 AM ]
QQ增值服务---8元/月/项
可查时间
可续费
不加好友
4 发表于 2007-06-26 09:29 ·  中国 四川 雅安 电信
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
楼上的太复杂了
能说的具体点吗?
5 发表于 2007-06-26 10:47 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
添加一个开机自启动项

@echo off
reg add HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Run /v MyAutoRun /t REG_SZ /d C:/test.bat /f
6 发表于 2007-06-26 10:51 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
具体到你的问题

@echo off
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d d:\123 /f
7 发表于 2007-06-26 18:52 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
网吧的机器 你叫我要一台一台的添吗??
8 发表于 2007-06-26 19:09 ·  中国 江苏 常州 武进区 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
UID 42345
状态 离线
For /f "delims=" %%i in (远程机器.txt) do (
REG ADD \\%%i\HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d d:\123 /f
)

无法测试 :(
9 发表于 2007-06-26 19:11 ·  中国 上海 联通
版主
★★★★★
积分 9,023
发帖 5,017
注册 2007-05-31 19:39
UID 89899
性别 男
状态 离线
//网吧的机器 你叫我要一台一台的添吗??

在1楼不说清楚 你叫大家一个一个的猜吗??
^_^
10 发表于 2007-06-26 20:21 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
添加成了 后面2个问题呢?

[ Last edited by coolclack on 2007-6-26 at 08:24 PM ]
11 发表于 2007-06-26 20:30 ·  中国 广东 广州 电信
高级用户
★★★
潜水修练批处理
积分 788
发帖 366
注册 2006-12-31 02:43
UID 75048
性别 男
状态 离线
运行taskkill /im explorer.exe /f 能不能不让任务栏消失 也能刷新桌面?

不能


我用的bat最后为什么dos窗口还没有关闭

直接调用其他命令时会等待其他命令的结束才进行下一个命令的,

@Echo off
regedit /s regfile.reg
taskkill /im explorer.exe /f
start "" explorer.exe
start "" RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
exit
正在潜水修练的批处理小白
12 发表于 2007-06-26 20:33 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
@echo off
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d D:\123 /f
taskkill /im explorer.exe /f
start "" explorer.exe
start "" RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
exit


应该没问题了吧?? 楼上的?!
13 发表于 2007-06-26 20:37 ·  中国 广东 广州 鹏博士宽带
新手上路
积分 18
发帖 8
注册 2007-06-24 11:29
UID 92223
性别 男
状态 离线
@echo off
reg add "HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders" /v Desktop /t REG_EXPAND_SZ /d C:\Documents and settings\Administrator\桌面 /f
taskkill /im explorer.exe /f
start "" explorer.exe
start "" RunDll32.exe USER32.DLL,UpdatePerUserSystemParameters
exit



哎呀!刷不会原来的桌面了
什么命令行参数太多?
14 发表于 2007-06-26 22:09 ·  中国 广东 深圳 电信
初级用户
积分 52
发帖 24
注册 2007-05-09 14:26
UID 87949
性别 男
状态 离线
刷新桌面不防用以下命令。。。‘




ntsd -c q -pn explorer.exe
15 发表于 2007-06-26 22:19 ·  中国 江苏 常州 武进区 电信
银牌会员
★★★
积分 2,404
发帖 946
注册 2005-09-08 13:44
UID 42345
状态 离线
试一下VBS:
path="HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Explorer\User Shell Folders\"
set ws=wscript.createobject("wscript.shell")
t=ws.regwrite(path & "Desktop","D:\123")
ws.run "ntsd -c q -pn explorer.exe"

[ Last edited by terse on 2007-6-27 at 11:58 PM ]
论坛跳转: