java -jar myApp '%1' のようなコマンドを呼び出して、Java アプリケーションを起動するためのプロトコル ハンドラを作成しています。現在、私はChrome用に実装しており、正しく動作しているようです。残念ながら、私は Firefox と IE で同じ動作をしていません (変ですね?! XD )
ここで私の実装。
プロトコルの名前は 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\""
クロムではこれで十分です。Firefox では、 about:configにいくつかの設定を追加する必要がありました。
network.protocol-handler.expose.dgh;true
network.protocol-handler.external.dgh;true
network.protocol-handler.warn-external.dgh;false
このようにして、Firefox は少なくともアプリケーションを起動するかどうかを尋ね、いずれかを選択するように求めます。それは望ましくありません。設定したコマンドを呼び出して、初めてユーザーにそれについてアドバイスします。
IE では何も起こらず、私のリンクから Web ページ参照を開くことができないと表示されます。
ここで、テストとして使用したリンクのセット
<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>
ここでいくつかの参照: プロトコル ハンドラーのインストールと登録 http://msdn.microsoft.com/en-us/library/aa767916%28VS.85%29.aspx
誰かが私を助けてくれることを心から願っています