设为首页 收藏本站

NSIS中文论坛

查看: 1301|回复: 5

[教程] 操作注册表写Hex值

[复制链接]
  • TA的每日心情

    2017-10-12 13:43
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    12

    主题

    43

    帖子

    892

    积分

    积分
    892
    发表于 2015-8-6 14:24:29 | 显示全部楼层 |阅读模式
    本帖最后由 飞翔 于 2015-8-6 14:25 编辑

    在注册表里又很多Hex值需要操作,但是在nsis里面写hex值用的是WriteRegBin ,对于hex值需要特别处理后,才能成功写入。

    例如以下reg文件里面包含的内容:

    1. [HKEY_CURRENT_USER\Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData]
    2.   "UserFilter"= "hex:41,1f,00,00,53,08,ad,ba,07,00,00,00,2c,01,00,00,01,00,00,00,\
    3.   07,00,00,00,0c,00,00,00,d8,1b,12,f0,2c,d9,ce,01,01,00,00,00,0e,00,64,00,69,\
    4.   00,67,00,69,00,77,00,69,00,6e,00,2e,00,63,00,6f,00,6d,00,2e,00,63,00,6e,00,\
    5.   0c,00,00,00,e7,27,0b,54,2d,d9,ce,01,01,00,00,00,0b,00,64,00,63,00,6d,00,73,\
    6.   00,2e,00,63,00,6f,00,6d,00,2e,00,63,00,6e,00,0c,00,00,00,5b,3f,77,7d,2d,d9,\
    7.   ce,01,01,00,00,00,0b,00,64,00,69,00,67,00,69,00,77,00,69,00,6e,00,2e,00,62,\
    8.   00,69,00,7a,00,0c,00,00,00,3a,57,91,85,2d,d9,ce,01,01,00,00,00,0a,00,64,00,\
    9.   73,00,63,00,2e,00,63,00,6f,00,6d,00,2e,00,74,00,77,00,0c,00,00,00,48,25,44,\
    10.   88,2d,d9,ce,01,01,00,00,00,0c,00,31,00,37,00,32,00,2e,00,31,00,36,00,2e,00,\
    11.   32,00,30,00,2e,00,36,00,35,00,0c,00,00,00,be,d8,cf,94,2d,d9,ce,01,01,00,00,\
    12.   00,0c,00,31,00,37,00,32,00,2e,00,31,00,36,00,2e,00,32,00,30,00,2e,00,31,00,\
    13.   32,00,0c,00,00,00,79,39,3a,a0,2d,d9,ce,01,01,00,00,00,0b,00,31,00,30,00,2e,\
    14.   00,32,00,30,00,2e,00,39,00,39,00,2e,00,37,00,37,00"
    复制代码


    我们如果只是单纯的按照下面的方式下入,肯定是会失败的。


    QQ截图20150806141832.png

    我们需要对数据做一定的处理
    最终方式应该如下:

    1. WriteRegBin HKCU "Software\Microsoft\Internet Explorer\BrowserEmulation\ClearableListData" "UserFilter" "411f00005308adba12000000fe02000001000000120000000c000000d81b12f02cd9ce01010000000e006400690067006900770069006e002e0063006f006d002e0063006e000c000000e7270b542dd9ce01010000000b00640063006d0073002e0063006f006d002e0063006e000c0000006bf0efa9d60dcf01010000000b006400690067006900770069006e002e00620069007a000c0000003a5791852dd9ce01010000000a006400"
    复制代码


    不要考虑中间的“,”“\”以及前面的“hex:”。

    希望这点经验对你有所帮助



    回复

    使用道具 举报

  • TA的每日心情
    无聊
    2017-10-30 15:32
  • 签到天数: 61 天

    [LV.6]常住居民II

    91

    主题

    378

    帖子

    4359

    积分

    积分
    4359
    发表于 2015-8-6 14:42:31 | 显示全部楼层
    不错不错
    回复

    使用道具 举报

  • TA的每日心情
    开心
    7 天前
  • 签到天数: 100 天

    [LV.6]常住居民II

    26

    主题

    166

    帖子

    9606

    积分

    积分
    9606
    发表于 2015-8-6 18:30:05 | 显示全部楼层
    很有帮助
    回复

    使用道具 举报

    该用户从未签到

    3

    主题

    11

    帖子

    111

    积分

    积分
    111
    发表于 2015-9-24 14:15:32 | 显示全部楼层
    楼主,我想知道往注册表写入建值的的具体做法是什么?比如用NSIS制作的软件安装包在安装时要往注册表写一个开机启动和添加右键菜单的功能键值,怎么做到? 或者是用什么编译代码吗?
    回复 支持 反对

    使用道具 举报

  • TA的每日心情

    2017-10-12 13:43
  • 签到天数: 18 天

    [LV.4]偶尔看看III

    12

    主题

    43

    帖子

    892

    积分

    积分
    892
     楼主| 发表于 2015-10-28 17:38:41 | 显示全部楼层
    净化软件 发表于 2015-9-24 14:15
    楼主,我想知道往注册表写入建值的的具体做法是什么?比如用NSIS制作的软件安装包在安装时要往注册表写一个 ...

    首先你得知道基本的nsis翻译原理和操作方法吧?

    上面的例子里已经有相应的操作了,对吧
    回复 支持 反对

    使用道具 举报

    该用户从未签到

    1

    主题

    7

    帖子

    118

    积分

    积分
    118
    发表于 2016-4-3 20:54:47 | 显示全部楼层
    感谢大大科普醍醐灌顶,之前直接调用导入reg,感觉很山寨。
    回复 支持 反对

    使用道具 举报

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

    本版积分规则

    Archiver|手机版|小黑屋|联系我们|NSIS中文论坛    

    GMT+8, 2017-11-21 12:42 , Processed in 0.131105 second(s), 13 queries , MemCache On.

    Powered by Discuz!X3.3

    © 2015-2017 NSISFANS.COM

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