无忧启动论坛

 找回密码
 注册
搜索
系统gho:最纯净好用系统下载站投放广告、加入VIP会员,请联系 微信:wuyouceo
查看: 69774|回复: 141
打印 上一主题 下一主题

【原创】reg2cmd

    [复制链接]
跳转到指定楼层
#
发表于 2007-12-3 10:45:19 | 只看该作者 回帖奖励 |正序浏览 |阅读模式
今天发现dos 论坛有个reg2bat 的小工具,不过功能差得很多,于是下午用perl重写了一个,用perlapp 编译。

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/

[haiou327上传]
reg2cmd.part1.rar (500 KB, 下载次数: 1841)
reg2cmd.part2.rar (500 KB, 下载次数: 1727)
reg2cmd.part3.rar (429.11 KB, 下载次数: 1761)


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

下面是北京电子地图的reg 文件
  1. Windows Registry Editor Version 5.00

  2. [HKEY_LOCAL_MACHINE\SOFTWARE\GisWay\BeiJing2007\Browser]
  3. "RunPath"="D:\\北京电子地图2007版\\Browser.exe BeiJing2007"
  4. "Path"="D:\\北京电子地图2007版"
  5. "Assistant"="D:\\北京电子地图2007版\\Assistant\"
  6. "Http"="Http://www.sinomaps.com/EMap/BeiJing2007/"
  7. "UserInfo"="Http://www.sinomaps.com/EMap/BeiJing2007/UserInfo/"
  8. "Print"=dword:00000001
  9. [HKEY_LOCAL_MACHINE\SOFTWARE\GisWay\BeiJing2007\Browser\Html]
  10. "Path"="D:\\北京电子地图2007版\\Html\"

  11. [HKEY_LOCAL_MACHINE\SOFTWARE\GisWay\BeiJing2007\Browser\Map]
  12. "Path"="D:\\北京电子地图2007版\\Map\"

  13. [HKEY_LOCAL_MACHINE\SOFTWARE\GisWay\BeiJing2007\Browser\Server]
  14. "Web"="Http://www.sinomaps.com/EMap/BeiJing2007/"
复制代码
得到的cmd文件
  1. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "RunPath" /t REG_SZ /d "D:\北京电子地图2007版\Browser.exe BeiJing2007"
  2. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Path" /t REG_SZ /d "D:\北京电子地图2007版"
  3. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Assistant" /t REG_SZ /d "D:\北京电子地图2007版\Assistant"
  4. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Http" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/"
  5. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "UserInfo" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/UserInfo/"
  6. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Print" /t REG_DWORD /d 1
  7. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Html" /f /v "Path" /t REG_SZ /d "D:\北京电子地图2007版\Html"
  8. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Map" /f /v "Path" /t REG_SZ /d "D:\北京电子地图2007版\Map"
  9. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Server" /f /v "Web" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/"
复制代码
把D:\北京电子地图2007版 替换为%CD% ,得到下面的批处理,放在 D:\北京电子地图2007版 目录下,便携版的北京电子地图2007版就诞生了
  1. pushd "~dp0"
  2. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "RunPath" /t REG_SZ /d "%CD%\Browser.exe BeiJing2007"
  3. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Path" /t REG_SZ /d "%CD%"
  4. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Assistant" /t REG_SZ /d "%CD%\Assistant"
  5. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Http" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/"
  6. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "UserInfo" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/UserInfo/"
  7. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser" /f /v "Print" /t REG_DWORD /d 1
  8. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Html" /f /v "Path" /t REG_SZ /d "%CD%\Html"
  9. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Map" /f /v "Path" /t REG_SZ /d "%CD%\Map"
  10. reg add "HKLM\SOFTWARE\GisWay\BeiJing2007\Browser\Server" /f /v "Web" /t REG_SZ /d "Http://www.sinomaps.com/EMap/BeiJing2007/"
  11. popd
复制代码

[ 本帖最后由 haiou327 于 2009-9-28 02:14 编辑 ]

评分

参与人数 7无忧币 +43 收起 理由
yyz2191958 + 2 赞一个!
879792799 + 5 很给力!
某些人 + 5 赞一个!
anythingsky + 5 赞一个!
2010hook + 5 水平高!
whatdoingsky + 1 很给力!
yueming9712 + 20 原创内容

查看全部评分

推荐
发表于 2007-12-3 11:51:07 | 只看该作者
不错,谢谢分享 
回复

使用道具 举报

推荐
发表于 2007-12-3 10:52:41 | 只看该作者
这样编辑导入注册表就方便了,以前只用INF文件解决路径问题
回复

使用道具 举报

127#
发表于 2024-7-27 16:39:08 | 只看该作者
这个有用!
回复

使用道具 举报

126#
发表于 2024-7-25 15:21:11 | 只看该作者
谢谢分享!!!
回复

使用道具 举报

125#
发表于 2024-7-25 15:08:24 | 只看该作者
感谢楼主分享
回复

使用道具 举报

124#
发表于 2024-5-10 12:52:50 | 只看该作者
谢谢分享
回复

使用道具 举报

123#
发表于 2024-5-2 04:48:39 来自手机 | 只看该作者
谢谢分享!
回复

使用道具 举报

122#
发表于 2024-4-30 10:02:28 | 只看该作者
谢谢分享
回复

使用道具 举报

121#
发表于 2024-4-12 06:39:20 | 只看该作者
谢谢分享
回复

使用道具 举报

120#
发表于 2024-4-11 09:58:53 来自手机 | 只看该作者
谢谢分享
回复

使用道具 举报

119#
发表于 2024-3-25 19:58:18 | 只看该作者
不错,谢谢分享!!!
回复

使用道具 举报

118#
发表于 2023-8-17 07:49:58 | 只看该作者
膜拜会编程的大佬
回复

使用道具 举报

117#
发表于 2023-8-16 13:57:28 | 只看该作者
好东西
回复

使用道具 举报

116#
发表于 2023-5-8 10:02:12 | 只看该作者
谢谢啊
回复

使用道具 举报

115#
发表于 2023-2-6 09:35:34 | 只看该作者
收藏,这个工具很好
回复

使用道具 举报

114#
发表于 2023-1-29 14:48:13 | 只看该作者
2010hook 发表于 2021-8-15 18:57
DOS论坛最新版:http://cndos.fam.cx/forum/viewthread.php?tid=35913


谢谢分享!!!
回复

使用道具 举报

113#
发表于 2022-7-21 15:42:00 来自手机 | 只看该作者
这个好,谢谢啦
回复

使用道具 举报

112#
发表于 2022-7-21 08:45:57 | 只看该作者
很好用,谢谢了!
回复

使用道具 举报

111#
发表于 2022-7-20 01:36:58 | 只看该作者
已下载,感谢分享
回复

使用道具 举报

110#
发表于 2022-6-27 08:33:27 | 只看该作者
转换出来的错误多,基本上用不了,还是用 regconvert 吧
回复

使用道具 举报

109#
发表于 2022-6-27 07:24:30 | 只看该作者
支持了
回复

使用道具 举报

108#
发表于 2022-6-23 01:38:29 | 只看该作者
谢谢楼主分享!
回复

使用道具 举报

107#
发表于 2022-6-21 10:53:42 | 只看该作者
这个厉害!
回复

使用道具 举报

106#
发表于 2021-12-11 20:34:55 | 只看该作者
感谢楼主分享
回复

使用道具 举报

105#
发表于 2021-12-11 19:15:45 | 只看该作者
yexingqi 发表于 2021-12-11 10:05
我在win10下面根本不能用啊? 最后产生的.bat文件是空的?

跟系统没关系,你的注册表内容有误或者过长吧
回复

使用道具 举报

104#
发表于 2021-12-11 18:38:00 | 只看该作者
谢谢,有时候确实需要,路径改成相对的就行了。好。
回复

使用道具 举报

103#
发表于 2021-12-11 12:14:00 来自手机 | 只看该作者
!!!
回复

使用道具 举报

102#
发表于 2021-12-11 10:05:58 | 只看该作者
我在win10下面根本不能用啊? 最后产生的.bat文件是空的?
回复

使用道具 举报

101#
发表于 2021-10-20 19:34:03 | 只看该作者
2010hook 发表于 2021-8-15 18:57
DOS论坛最新版:http://cndos.fam.cx/forum/viewthread.php?tid=35913

谢谢分享!!!
回复

使用道具 举报

100#
发表于 2021-10-18 15:36:07 | 只看该作者
本帖最后由 2010hook 于 2021-10-18 16:39 编辑

对于行数太多导致无法处理的情况,希望默认可以忽略这类超多行数的注册表键:
HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Perflib
HKLM\SOFTWARE\Wow6432Node\Microsoft\Windows NT\CurrentVersion\Perflib

另外,希望生成的批处理开头添加 @echo off
回复

使用道具 举报

99#
发表于 2021-10-18 15:11:22 | 只看该作者
本帖最后由 2010hook 于 2021-10-18 15:19 编辑

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
回复

使用道具 举报

98#
发表于 2021-8-16 10:18:31 | 只看该作者
        很给力!
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|捐助支持|无忧启动 ( 闽ICP备05002490号-1 )

闽公网安备 35020302032614号

GMT+8, 2024-11-24 17:54

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表