中国DOS联盟论坛

中国DOS联盟

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

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

游客:  注册 | 登录 | 命令行 | 会员 | 搜索 | 上传 | 帮助 »
中国DOS联盟论坛 » DOS批处理 & 脚本技术(批处理室) » 请教2000下的注册表读取和进程查看命令!
作者:
标题: 请教2000下的注册表读取和进程查看命令! 上一主题 | 下一主题
yaoguof
初级用户





积分 90
发帖 35
注册 2006-10-23
状态 离线
『楼 主』:  请教2000下的注册表读取和进程查看命令!

问题一:
@ECHO OFF&SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=1,2,*" %%i in ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" ^| FIND /I "WUServer"') DO (
        SET update=%%k)

可是2000下也没有reg这个命令,
用regedit /e也没有办法导出注册表


问题二:
同时在2000环境下无法使用tasklist命令,请问有其他的命令可以代替吗?

2006-12-16 06:48
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 2 楼』:  


  1、用echo写文件吧。

  2、如果2000支持WIMC的话,可以用WMIC代替tasklist。


2006-12-16 06:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yaoguof
初级用户





积分 90
发帖 35
注册 2006-10-23
状态 离线
『第 3 楼』:  

楼上的 1、用echo写文件吧。
这个我还是不太明白,我是需要从注册表读取键值的,怎么用echo写文件呢?请在指教一下,谢谢!

2006-12-16 07:29
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
lxmxn
版主




积分 11386
发帖 4938
注册 2006-7-23
状态 离线
『第 4 楼』:  


  这个……

  既然2000里面没有自带的注册表健提取工具,那就没有办法了,只能手工提取了。


2006-12-16 08:46
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
yaoguof
初级用户





积分 90
发帖 35
注册 2006-10-23
状态 离线
『第 5 楼』:  

有没有其他的外部工具可以实现呢?

还有2000下用没有其他另类的方法显示系统运行的进程?

[ Last edited by yaoguof on 2006-12-16 at 11:05 AM ]

2006-12-16 10:58
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
vkill
金牌会员





积分 4103
发帖 1744
注册 2006-1-20
来自 甘肃.临泽
状态 离线
『第 6 楼』:  

复制进去个reg.exe可以吗?

2006-12-16 11:11
查看资料  发送邮件  访问主页  发短消息 网志   编辑帖子  回复  引用回复
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『第 7 楼』:  



  Quote:
Originally posted by yaoguof at 2006-12-16 06:48:
问题一:
@ECHO OFF&SETLOCAL ENABLEDELAYEDEXPANSION
for /f "tokens=1,2,*" %%i in ('REG QUERY "HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Microsoft\Windows\WindowsUpdate" ^| F ...

写注册表的方法有很多。
1。最常用的方法是使用REG命令。如果你的WIN2000没有这个你可以把WINXP的复制一个到winnt\system32下面。
2。如果你不想采用第一种方案,建议使用ECHO的方式,不过有大量的注册表读写操作的话,工作量相对比较大。如:
ECHO REGEDIT4 >>MYREG.REG
ECHO. >>MYREG.REG
ECHO [HKEY_CLASSES_ROOT\.mdb]>>MYREG.REG
ECHO [HKEY_CLASSES_ROOT\.mdb\PersistentHandler]>>MYREG.REG
ECHO @="{098f2470-bae0-11cd-b579-08002b30bfeb}">>MYREG.REG
REGEDIT /S "MYREG.REG"

其中ECHO是管道命令,可以把字符显示出来或输出到一个文件中,而REGEDIT则把ECHO的输出文件MYRRG。REG导入注册表。
完成后注册表将产生:
[HKEY_CLASSES_ROOT\.mdb]
[HKEY_CLASSES_ROOT\.mdb\PersistentHandler]
@="{098f2470-bae0-11cd-b579-08002b30bfeb}"

3.我认为读写注册表最简单的方法是先在记事本中编辑好需要的注册表项和值,然后使用REGEDIT /S导入即可,方法实际上同2。但是这个方法有好处就是制作绿色版软件时非常有用,如我制作绿色软件前使用注册表监视工具获取注册表文件green.reg,然后使用binsub等DOS工具或使用for命令把GREEN.REG文件中的路径替换为绿色办安装路径(使用%cd%变量可以获取当前路径),然后使用regedit /s "green.reg"导入注册表就可以了.

4.使用第三方工具,这样的工具很多,我就不做介绍,因为本人不使用第三方注册表工具.

好象WMIC也可以操作注册表,不过本人正在学习WMIC中,了解不多.

2006-12-16 21:35
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复
HUNRYBECKY
银牌会员





积分 1179
发帖 442
注册 2006-9-9
状态 离线
『第 8 楼』:  

更详细的内容和例子见24楼
http://www.cn-dos.net/forum/view ... ghlight=&page=2

2006-12-16 22:23
查看资料  发送邮件  发短消息 网志   编辑帖子  回复  引用回复

请注意:您目前尚未注册或登录,请您注册登录以使用论坛的各项功能,例如发表和回复帖子等。


可打印版本 | 推荐给朋友 | 订阅主题 | 收藏主题



论坛跳转: