我正在使用ManagementEventWatcher来监视使用System.Management断开网络电缆。
使用WQL的ManagementEventWatcher: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一样。
如何才能发现女巫网络接口被拔掉?
答案 0 :(得分:0)
查看“Win32_NetworkAdapter.NetConnectionID”。这是 - 在我的机器[!!] - 您将在网络连接[控制面板]中看到的相同的字符串,它应该是相同的值,在“MSNdis_EnumerateAdapter.InstanceName =”中显示。
可能,这有帮助!?
BR - mabra