我正在編寫一個協議處理程序來啓動java應用程序,調用類似於java -jar myApp'%1'的命令。目前我已經實施了Chrome瀏覽器,看起來工作正常。不幸的是,我對Firefox和IE沒有同樣的行爲(怪怪的?!X-D)在窗口上運行的Firefox,Chrome和IE上編寫可移植的自定義協議處理程序
在這裏我的實現。
協議名爲dgh。 在第一次安裝我的應用程序設置以下鍵在Windows註冊表中
Windows Registry Editor Version 5.00
[HKEY_CLASSES_ROOT\dgh]
@="URL:DgHome Protocol"
"URL Procol"=""
[HKEY_CLASSES_ROOT\dgh\DefaultIcon]
@="C:/DGHOME/IPlusConf.exe,1"
[HKEY_CLASSES_ROOT\dgh\shell]
[HKEY_CLASSES_ROOT\dgh\shell\open]
[HKEY_CLASSES_ROOT\dgh\shell\open\command]
@="java -jar C:/DGHOME/Pch/lib/pch.teleconsulto.jar \"%1\""
在Chrome這就夠了。 在Firefox,我不得不在約增加一些配置:配置。繼MDN在Firefox我設置以下
network.protocol-handler.expose.dgh;true
network.protocol-handler.external.dgh;true
network.protocol-handler.warn-external.dgh;false
這樣的Firefox,如果我想啓動一個應用程序,並要求至少問我我選擇一個:我不希望這樣,我會把它叫做我設置的命令,並建議第一次用戶有關:
在IE上沒有任何反應,它說無法打開網頁通過我的鏈接參考。
下面一組鏈接的我作爲測試
<a href="dgh://call/open?id='kit1.teleconsulto'">Open call to kit1.teleconsulto</a>
<a href="dgh://teleconsult/start?id='kit1.teleconsulto'">
Open teleconsult to kit1.teleconsulto</a>
<a href="dgh://call/close">Close call</a>
<a href="dgh://call/end">Close client</a>
<a href="dgh://stethoscope/start">On Phonendo</a>
這裏提供一些參考: Installing and Registering Protocol Handlers http://msdn.microsoft.com/en-us/library/aa767916%28VS.85%29.aspx
我真誠地希望有人能幫助我
我知道什麼,我會寫是不是專業的,絕對不會客氣,但是我必須做的: 沒有人,即使是想象如何解決那??! sob:'(:'(:'( –