My.Application.NetworkAvailabilityChanged イベント
更新 : 2007 年 11 月
ネットワークの可用性に変化があったときに発生します。
' Usage
Public Sub Me_NetworkAvailabilityChanged( _
ByVal sender As Object, _
ByVal e As NetworkAvailableEventArgs _
) Handles Me.NetworkAvailabilityChanged
End Sub
' Declaration
Public Event NetworkAvailabilityChanged( _
ByVal sender As Object, _
ByVal e As NetworkAvailableEventArgs _
)
パラメータ
sender
必ず指定します。イベントの発生元の Object。e
必ず指定します。ネットワークの可用性に関する情報が格納される NetworkAvailableEventArgs オブジェクトを指定します。
解説
アプリケーションでは、ネットワークの可用性が変化するたびに NetworkAvailabilityChanged イベントが生成されます。e パラメータの IsNetworkAvailable プロパティを使って、ネットワーク接続の新しい状態を取得できます。ネットワーク接続の現在の状態を取得するには、My.Computer.Network.IsAvailable プロパティ を使用します。
このイベントは、アプリケーションのメイン スレッドで他のユーザー インターフェイス イベントと一緒に発生します。このため、イベント ハンドラはアプリケーションの UI に直接アクセスできます。ただし、このイベントが発生したとき、アプリケーションが別のユーザー インターフェイス イベントの処理でビジーになっている場合は、そのイベント ハンドラが終了するか、または My.Application.DoEvents メソッド を呼び出すまで、このイベントを処理できません。
My.Computer.Network.NetworkAvailabilityChanged イベント はこのイベントと同じ機能を持ちますが、すべての種類のアプリケーションで使用できます。
NetworkAvailabilityChanged イベント ハンドラ用のコードは、ApplicationEvents.vb ファイルに格納されています。このファイルは既定では非表示です。
アプリケーション イベントのコード エディタ ウィンドウにアクセスするには、次の操作を行います。
ソリューション エクスプローラでプロジェクトを選択します。[プロジェクト] メニューの [プロパティ] をクリックします。
[アプリケーション] タブをクリックします。
[アプリケーション イベントの表示] をクリックしてコード エディタを開きます。
詳細については、「方法 : アプリケーション イベントを処理する (Visual Basic)」を参照してください。
メモ : |
---|
多くのネットワーク ハブが、広域ネットワークからハブが切断された場合でもネットワーク接続を提供します。そのため、回線がつながっている場合、このイベントはコンピュータとハブの間で接続に変化があったことを示します。 |
メモ : |
---|
NetworkAvailabilityChanged イベントは、Windows 95 や Windows 98 で動作しているアプリケーションや、Windows 2000 で管理者以外によって実行されたアプリケーションでは発生しません。このようなプラットフォームでアプリケーションを実行する可能性がある場合は、My.Computer.Network.IsAvailable プロパティ を使用してネットワークが使用可能かどうかを調べてください。 |
使用例
次の例は、ネットワークの可用性が変化したときに、既定の Form1 クラスの SetConnectionStatus メソッドを呼び出します。
アプリケーション イベントのコードを、コード エディタ ウィンドウに入力する必要があります。このウィンドウを利用するには、このトピックの「解説」にある説明に従ってください。
Private Sub MyApplication_NetworkAvailabilityChanged( _
ByVal sender As Object, _
ByVal e As Microsoft.VisualBasic.Devices.NetworkAvailableEventArgs _
) Handles Me.NetworkAvailabilityChanged
My.Forms.Form1.SetConnectionStatus(e.IsNetworkAvailable)
End Sub
コードのコンパイル
プロジェクトに Form1 という名前のフォームが必要です。そのフォームは、Boolean 型のパラメータを受け取る SetConnectionStatus という名前のメソッドを含む必要があります。
必要条件
名前空間 : Microsoft.VisualBasic.ApplicationServices
クラス : WindowsFormsApplicationBase
アセンブリ : Visual Basic ランタイム ライブラリ (Microsoft.VisualBasic.dll)
使用可能なプロジェクトの種類
プロジェクトの種類 |
使用可/不可 |
---|---|
Windows アプリケーション |
可 |
クラス ライブラリ |
不可 |
コンソール アプリケーション |
不可 |
Windows コントロール ライブラリ |
不可 |
Web コントロール ライブラリ |
不可 |
Windows サービス |
不可 |
Web サイト |
不可 |
アクセス許可
アクセス許可は不要です。