ユーザーのコンピューターから Web サービスにデータのストリームを送信できるようにしたいと考えています。それはそれほど難しいことではありません。ユーザーの Windows コンピューターに常駐する dot-net で記述されたアプリケーションを使用します。
ただし、注意が必要なのは、ユーザーがブラウザーで開いている Web ページのボタンまたはリンクをクリックしたときにのみ、データのストリームを (アプリによって) 送信する必要があることです。アプリ自体はシステム トレイで最小化されます。そして、彼はその Web ページの停止ボタン (またはリンク) をクリックして、ストリームを停止できるはずです..
したがって、[a href='alert:"Hello World" '] のようなリンクをページに配置できるというスタックオーバーフローに関する情報を見つけました。アプリケーションを登録すると (この例では、アプリは呼び出されます) "alert.exe") をレジストリに追加し、ユーザーがリンクをクリックすると、アプリケーションが起動し、パラメーターとして "Hello World" を受け取ります。
とにかく、私の場合は合併症があります。アプリケーションの新しいインスタンスを開始することなく、いつデータの送信を開始し、いつデータの送信を停止するかをアプリケーションに伝えることができるようにしたいと考えています。ユーザーが [開始] をクリックし、アプリが既に開いている場合は、もう一度開きたくありません。「送信を開始する」というメッセージが表示され、ユーザーが停止ボタン (またはリンク) をクリックして「送信を停止する」というメッセージが表示されます。ユーザーはセッション中にこれらの Web ページ ボタンを数回クリックする可能性があり、そのたびにプログラムを閉じて再度開くのは望ましくありません。
いくつか質問があります:
私は正しいアプローチを取っていますか?「プラグイン」の方が良いでしょうか?
正しいアプローチを取っている場合、Web ページからアプリケーションにコマンドを送信する方法はありますか?
アプリでユーザー コンピューターのレジストリを変更しても安全ですか?
もしそうなら、それを行うための一連のコマンドはありますか?
レジストリは Windows 7、Windows 8 などでサポートされていますか? Mac ではサポートされていないことはわかっています。
前もって感謝します。
LL
PS (ブラウザーからのアプリの起動に関する情報は、http: //msdn.microsoft.com/en-us/library/ie/aa767914%28v=vs.85%29.aspxにありました)。