Board logo

标题: 【原创】reg2cmd,12.05 更新 [打印本页]

作者: lyh728     时间: 2007-12-3 09:52    标题: 【原创】reg2cmd,12.05 更新

看了reg2bat
http://www.fs2you.com/files/2d9aee78-a147-11dc-8435-0014221f4662/
感觉问题很多,于是用perl 重写了一个,用perlapp 编译为exe
12.05 fix regedit4 的支持
12.04 更新,修正了没有考虑长文件名的bug
增加了自动安装到右键菜单的功能(直接运行,会询问是否安装,目前无卸载)
增加了对 hex(3) hex(6) hex(8) hex(9) hex(a) hex(b) 类型的处理
取消了对批处理文件中元字符的特殊处理
增加了删除键值的功能

12.03 更新,可以处理键值中的=,修复了 增加功能时候引入的低级bug
更新了一个处理结尾的双斜杠的bug,

从这里下载
http://www.fs2you.com/en/files/2 ... -80f2-0014221f4662/

我的os 是w2k3 std sp2

使用很简单,
reg2cmd.exe reg文件名字 [批处理文件名字]

───────────────── 版务记录 ─────────────────
执行:HAT
操作:下载链接已经失效,请使用25楼提供的链接:
http://upload.cn-dos.net/img/746.rar
http://good.gd/25613.htm
───────────────── 版务记录 ─────────────────


[ Last edited by HAT on 2008-10-5 at 00:24 ]
作者: tireless     时间: 2007-12-3 12:30
不错,就是不能把reg拖到reg2cmd.exe上面
试了一个,输出为
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /f /v "DisableTaskMgr" /t  /d 0
怎么不把/t 去掉。不过无所谓。
作者: lxmxn     时间: 2007-12-3 12:40
不错啊,加分支持。

兄可否把perl源码发到我的邮箱?lxmxn520@gmail.com,谢谢。
作者: vkill     时间: 2007-12-3 12:49
perl 调用 api ?还是有操作reg的库?
作者: lyh728     时间: 2007-12-3 14:27


  Quote:
Originally posted by tireless at 2007-12-3 12:30 PM:
不错,就是不能把reg拖到reg2cmd.exe上面
试了一个,输出为
reg add "HKCU\Software\Microsoft\Windows\CurrentVersion\Policies\System" /f /v "DisableTaskMgr" [b ...

抱歉,那是一个bug ,修改代码后忘记了,已经修正,请重新下载
作者: lyh728     时间: 2007-12-3 14:31
to  lxmxn:
等我再完善一下,看看还有没有大的问题
to vkill:
  没有api ,就是字符串分析,参考了你的部分思路
作者: vkill     时间: 2007-12-3 21:02


  Quote:
Originally posted by lyh728 at 2007-12-3 14:31:
to  lxmxn:
等我再完善一下,看看还有没有大的问题
to vkill:
  没有api ,就是字符串分析,参考了你的部分思路

哦,那还是处理字符串了,这样bug很多的,因为有些二进制值是多行的
作者: lyh728     时间: 2007-12-3 23:57


  Quote:
Originally posted by vkill at 2007-12-3 09:02 PM:

哦,那还是处理字符串了,这样bug很多的,因为有些二进制值是多行的

多行的binary  处理了啊
作者: lxmxn     时间: 2007-12-3 23:59


  Quote:
Originally posted by vkill at 2007-12-3 21:02:

哦,那还是处理字符串了,这样bug很多的,因为有些二进制值是多行的

Perl 正是处理字符串强有力的工具,所以感觉对于这些应该没什么问题。
作者: fastslz     时间: 2007-12-4 08:31
哈哈,懒人的好工具
楼主等代码稳定后再考虑reg delete 功能,如:

;加速zip文件的拷贝和移动(禁用windows自带的zip功能)
[-HKEY_CLASSES_ROOT\.zip\CompressedFolder]
[-HKEY_CLASSES_ROOT\CLSID\{E88DCCE0-B7B3-11d1-A9F0-00AA0060FA31}]
[-HKEY_LOCAL_MACHINE\SOFTWARE\Classes\CompressedFolder]

;删除附加输入法
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Run]
"PHIME2002ASync"=-
"IMJPMIG8.1"=-
"PHIME2002A"=-
作者: lyh728     时间: 2007-12-4 16:32
to fastslz:
删除功能  ok 了
作者: fastslz     时间: 2007-12-4 20:51
谢谢~暂时没有其它标准写法了,有了再跟贴
作者: zts59     时间: 2007-12-4 21:58
呵呵,用这个工具可以查看REG的很多的用法,不错
作者: tireless     时间: 2007-12-5 02:23
[HKEY_CLASSES_ROOT\CLSID\{00000000-0000-0000-0000-000000000012}\InProcServer32]
@=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,73,79,73,74,65,6d,33,32,5c,73,\
68,64,6f,63,76,77,2e,64,6c,6c,00


转换结果:
reg add "HKCR\CLSID\{00000000-0000-0000-0000-000000000012}\InProcServer32" /f /ve /t REG_EXPAND_SZ /d "匥獹整剭潯?獜獹整?尲桳潤癣?汤l"
作者: lyh728     时间: 2007-12-5 05:09


  Quote:
Originally posted by tireless at 2007-12-5 02:23 AM:
[HKEY_CLASSES_ROOT\CLSID\{00000000-0000-0000-0000-000000000012}\InProcServer32]
@=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,73,79,73,74,65,6d,33,32,5c,73,\
68,64,6f,63,76,77,2e,64, ...

目前实际上仅仅支持
Registry Editor Version 5.00


对老注册表格式 需要 修改一下

[ Last edited by lyh728 on 2007-12-5 at 05:14 AM ]
作者: lyh728     时间: 2007-12-5 05:31


  Quote:
Originally posted by tireless at 2007-12-5 02:23 AM:
[HKEY_CLASSES_ROOT\CLSID\{00000000-0000-0000-0000-000000000012}\InProcServer32]
@=hex(2):25,53,79,73,74,65,6d,52,6f,6f,74,25,5c,73,79,73,74,65,6d,33,32,5c,73,\
68,64,6f,63,76,77,2e,64, ...

thx ,已经修复问题
作者: fastslz     时间: 2007-12-30 23:58
lyh728兄,先谢谢你的工具
目前发现有一点不便之处,还请修改一下输出格式
reg add "HKLM\SOFTWARE\xxxx" /f /v "xxxx" /t REG_SZ /d "xxxx"
reg add "HKLM\SOFTWARE\xxxx" /v "xxxx" /t REG_SZ /d "xxxx" /f
这样我们能很方便的把最后的/f替换成/f>nul
作者: suntb     时间: 2008-1-29 14:10
估计用到的机会挺大的

先下载备用 谢谢
作者: kidzgy     时间: 2008-1-29 16:51
希望能添加卸载功能。
进入程序后,按Y添加右键,按N去除右键,按Q退出
作者: yeke     时间: 2008-3-18 15:05
收下了,谢谢提供
作者: tireless     时间: 2008-7-30 16:42
希望在reg文件右键添加“Extract”,就是反添加的意思



[ Last edited by tireless on 2008-7-29 at 08:44 PM ]
作者: scarecrow0929     时间: 2008-7-30 19:13
收下了,谢谢楼主~~
作者: zhoumeng     时间: 2008-7-31 11:39
好工具
作者: zszhw     时间: 2008-9-12 14:16
你写的reg2cmd.exe真好,可惜不能下载了,能不能再发下个下载地址
作者: tireless     时间: 2008-9-12 14:25
以下引自CCF精品技术论坛 【原创】reg2cmd (12.07更新)

  Quote:
12.07更新 Build: <2007-12-07 12:51:28>
去掉了外部模块的引用,极大了减小了编译后文件的大小(500k左右)

下载地址: http://upload.cn-dos.net/img/746.rar
下载地址2: http://good.gd/25613.htm
作者: aries215     时间: 2021-10-18 15:15
Reg2Cmd 转换 hex(b) REG_QWORD 错误,本该是little-endian,倒叙复写原本数值,并把开头改成0x形式即可。
For example, the value 0x12345678 is stored as (78 56 34 12) in little-endian format.

NT6x 系统 IFEO 可找到实例:
[HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Image File Execution Options\iexplore.exe]
"MitigationOptions"=hex(b):00,01,00,00,00,00,00,00

[ Last edited by aries215 on 2021-10-18 at 15:19 ]
作者: aries215     时间: 2021-10-18 15:37
希望可以主动忽略这类超多行数的注册表键:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Perflib