最新消息:

NSIS脚本添加可信站点 (1)

nsis 永恒心锁 8371浏览 0评论

通过NSIS脚本向IE添加可信站点,

由于没有现成的windows API可调用,实际情况比较复杂
一、常见情况及其对应注册表位置
(一)IP或域名的几种常见情况
尽管用户输入的URL可能很复杂,但是提取出来的IP或域名有以下几种常见情况

(1)IP
例如
192.168.0.1

(如果非服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Ranges\Range<N>
<N>是一个从1开始的整数
名称:Range        值192.168.0.1
名称*    值0x2

(如果服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscRanges\Range<N>
<N>是一个从1开始的整数
名称:Range        值192.168.0.1
名称*    值0x2

(2)一段域名
例如
localhost

(如果非服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\localhost
名称*    值0x2

(如果服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscRanges\localhost
名称*    值0x2

(3)两段域名
例如
baidu.com

(如果非服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\baidu.com
名称*    值0x2

(如果服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscRanges\baidu.com
名称*    值0x2

(4)三段域名
例如
www.baidu.com

(如果非服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\Domains\baidu.com\www
名称*    值0x2

(如果服务器)加到
HKEY_CURRENT_USER\Software\Microsoft\Windows\CurrentVersion\Internet Settings\ZoneMap\EscRanges\baidu.com\www
名称*    值0x2

(二) IP或域名的特殊情况
about:blank

(三) 输入URL的解析
其实比较复杂,需考虑因素
(1)有无协议头

(2)协议种类
(2.1)常见协议
http://
https://
ftp://

(2.2)特殊协议
file:///

(2.3)特殊写法
ftp://username:password@

(3)有无端口

二、关于64位机器的注册表
64位windows操作系统有32位和64位注册表,建议两个都写

(1)使用命令行,可使用隐形开关/reg:64或/reg:32
reg add … /reg:64
reg add … /reg:32或者reg add

(2)在NSIS里面,可以用以下指令
SetRegView 32
SetRegView 64

三、关于Range<N>的N的判断
由于一般可信站点也不太多,所以可以用最笨的办法
从1开始遍历到MAX_INT,直到该注册表键不存在。

注意:有的脚本语言没有MAX_INT这样的函数,可以用一个较大的整数,例如2的16次方-1,来模拟这样一个整数

免责声明:根据《计算机软件保护条例》第十七条规定“为了学习和研究软件内含的设计思想和原理,通过安装、显示、传输或者存储软件等方式使用软件的,可以不经软件著作权人许可,不向其支付报酬。”您需知晓本站所有内容资源均来源于网络,仅供用户交流学习与研究使用,版权归属原版权方所有,版权争议与本站无关,用户本人下载后不能用作商业或非法用途,需在24个小时之内从您的电脑中彻底删除上述内容,否则后果均由用户承担责任;如果您访问和下载此文件,表示您同意只将此文件用于参考、学习而非其他用途,否则一切后果请您自行承担,如果您喜欢该程序,请支持正版软件,购买注册,得到更好的正版服务。丨本站为个人博客非盈利性站点,所有软件信息均来自网络,所有资源仅供学习参考研究目的,并不贩卖软件,不存在任何商业目的及用途。丨本文采用知识共享 署名4.0国际许可协议 [BY-NC-SA] 进行授权BY-NC-SA协议进行授权

转载请注明:永恒心锁-分享互联网 » NSIS脚本添加可信站点 (1)

您必须 登录 才能发表评论!