System.Management を使用してネットワーク ケーブルの切断を監視するために ManagementEventWatcher を使用しています。
ManagementEventWatcher を WQL: と共に使用し、 SELECT * FROM MSNdis_StatusMediaDisconnect
EventArrived
のときに次のメソッドが起動されます。
private void ServiceNetWorkStatusWmiDisconnected(object sender, EventArrivedEventArgs args)
{
string instanceName = args.NewEvent.Properties["InstanceName"].Value as string;
ServiceNetWorkStatusWmi = string.Format("Network disconnected ({0})", instanceName);
Console.WriteLine(ServiceNetWorkStatusWmi);
}
問題は次のとおりです。
同じメーカーの 2 つのネットワーク インターフェイスがありますが、どちらの場合も、InstanceName の値が同じで、プラグが抜かれたネットワークを特定できません。
EventArrivedEventArgs のすべてのプロパティを試しましたが、デバイス ID のようなデバイスの制約 ID がありません。
ウィッチ ネットワーク インターフェイスが取り外されたことを確認するにはどうすればよいですか?