注册表打开的一些记录
1、传一个参数
新建 alert.reg
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\alert]
@="URL: Alert Protocol"
"URL Protocol"=""
[HKEY_CLASSES_ROOT\alert\DefaultIcon]
@="iexplore.exe,1"
[HKEY_CLASSES_ROOT\alert\shell]
[HKEY_CLASSES_ROOT\alert\shell\open]
[HKEY_CLASSES_ROOT\alert\shell\open\command]
@=" cmd /c set m=%1 & call set m=%%m:alert:=%% & call \"C:\\Program Files\\Internet Explorer\\iexplore.exe\" %%m%% & exit"
测试:<a href="alert://www.baidu.com?a=1" />test</a>
2、传递多个参数
[HKEY_CLASSES_ROOT\alert\shell\open\command]
@="cmd /c set m=%1 & call set m=%%m:alert:=%% & call set m=\"%%m:separator=&%%\" & call \"C:\\Program Files\\Internet Explorer\\iexplore.exe\" %%m%% & exit"
测试:<a href="alert://www.baidu.com?a=1separatorb=2" />test</a>
3、第二种写法存在问题,如果打开之后不关闭IE,再次点击会出现错误
新建alert.bat
@echo off
set m=%m:alert:=%
set m="%m:separator=&%"
start "" "C:\\Program Files\\Internet Explorer\\iexplore.exe" %m%
exit
修改reg
[HKEY_CLASSES_ROOT\alert\shell\open\command]
@="cmd /c set m=%1 & \"C:\\Program Files\\WisoftAlert\\alert.bat\" %%m%% & exit"
4、链接中直接使用&符号
修改alert.reg,将参数%1用双引号引起来
[HKEY_CLASSES_ROOT\alert\shell\open\command]
@="\"C:\\Program Files\\WisoftAlert\\alert.bat\" \"%1\""
修改alert.bat
@echo off
set m=%1%
set m=%m:alert:=%
start "" "C:\\Program Files\\Internet Explorer\\iexplore.exe" %m%
exit