2012-01-13 8 views
2

Javaを使用してネットワークイベントをキャプチャすることは可能ですか?私はハブに私のethenetアダプタを接続すると、例えばキャプチャネットワーク接続イベント

は、「接続性」があり、これは、Windows XPで検出され、「バブル」は、ユーザーに表示しました。 Windowsは、アプリケーション、特にJavaで書かれたアプリケーションによってキャプチャできるイベントもブロードキャストしますか?あなたができる

+0

私が今まで見たことのあるすべてのアプリケーションが接続が利用可能であると「手動で」チェックし続けるため、このようなイベントはブロードキャストされていないと思います。 – Viruzzo

+0

@Kerubu、LAN接続またはインターネット接続をチェックしますか? – gtiwari333

+0

LAN接続。 – Kerry

答えて

1

は、私の知る限りでは、Javaが検出できることが、このためのイベントがありません - それは、特定の非常にOSをです。あなたができることは、利用可能なネットワークインターフェイスを頻繁にポーリングすることです。

Enumeration<NetworkInterface> e = NetworkInterface.getNetworkInterfaces(); 
+0

これは私が疑ったものです。私はできれば投票を避けたい。おそらく、ユーザーが開始したチェック/検索を使用するだけです。 – Kerry

1

最高のは、あなたが信頼できるURLがアップになります定期的にポーリングスレッドを作成することによって、ネットワーク接続を持っているか否かを検出します。 Windowsのネットワークイベントを検出するには、Windows APIへのJNI呼び出しが必要です。

+1

どのURLを投票しますか?私は、彼はインターネット接続を検出することを意味しないと思う。 "ethenetアダプタをハブに接続すると、"接続性 "があります。" ...彼はWindowsで検出されたイーサネット接続イベントを検出したいと考えています。 – gtiwari333

+0

はい、それはまさに私が意味することです。 – Kerry