如何實現IE自定義協議

轉載於:http://koko.c.blog.163.com/blog/static/2802775320089221011459/

如何實現IE自定義協議
瀏覽QQ空間的時候發現,只要在IE地址中輸入象一下這種形式的地址,

tencent://Message/?Uin=251464630&websiteName=qzone.qq.com&Menu=yes

就會彈出給 251464630 發送信息的對話框,也就是說QQ對IE地址欄的東西做了監控。而且可以發現輸入地址確定之後他就啓動了timwp.exe這個程序。在PPlive 也有實現類似的功能,
方法一: 也就是QQ和PPlive所採用的方法,在註冊表裏面添加兩種類型的註冊。

QQ的:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\TENCENT]

@="TencentProtocol"

"URL Protocol"="C:\\Program Files\\Tencent\\QQ\\Timwp.exe"

[HKEY_CLASSES_ROOT\TENCENT\DefaultIcon]

@="C:\\Program Files\\Tencent\\QQ\\Timwp.exe,1"

[HKEY_CLASSES_ROOT\TENCENT\shell]

[HKEY_CLASSES_ROOT\TENCENT\shell\open]

[HKEY_CLASSES_ROOT\TENCENT\shell\open\command]

@="\"C:\\Program Files\\Tencent\\QQ\\Timwp.exe\" \"%1\""

PPlive的:

Windows Registry Editor Version 5.00

[HKEY_CLASSES_ROOT\Synacast]

@="URL:synacast Protocol"

"Version"="1.5.38"

"URL Protocol"=""

[HKEY_CLASSES_ROOT\Synacast\DefaultIcon]

@="C:\\Program Files\\PPLive\\PPLive.exe"

[HKEY_CLASSES_ROOT\Synacast\Shell]

[HKEY_CLASSES_ROOT\Synacast\Shell\Open]

[HKEY_CLASSES_ROOT\Synacast\Shell\Open\Command]

@="C:\\Program Files\\PPLive\\PPLive.exe \"%1\""

通過多方查找終於發現是註冊表這兩項在起作用,原來只要在註冊表裏象添加文件擴展名一樣,添加兩個Synacast和TENCENT擴展名來,IE就會自動查找到這裏來調用相應的程序。IE果然和windows系統內核整合起來了!原來註冊表擴展名項還有這種作用,自己見識太少了,這種方法實現IE地址的自定義估計是最簡單的了。
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章