public int EnableOrDisableNetworkAdapter(string strOperation) { int resultEnableDisableNetworkAdapter = (int)EnumEnableDisableResult.Unknow; ManagementObject crtNetworkAdapter = new ManagementObject(); string strWQuery = string.Format("SELECT DeviceID, ProductName, " + "NetEnabled, NetConnectionStatus " + "FROM Win32_NetworkAdapter " + "WHERE DeviceID = {0}", DeviceId); try { ManagementObjectCollection networkAdapters = WMIOperation.WMIQuery(strWQuery); foreach (ManagementObject networkAdapter in networkAdapters) { crtNetworkAdapter = networkAdapter; } crtNetworkAdapter.InvokeMethod(strOperation, null); Thread.Sleep(500); while (GetNetEnabled() != ((strOperation.Trim() == "Enable") ? (int)EnumNetEnabledStatus.Enabled : (int)EnumNetEnabledStatus.Disabled)) { Thread.Sleep(100); } resultEnableDisableNetworkAdapter = (int)EnumEnableDisableResult.Success; } catch (NullReferenceException) { resultEnableDisableNetworkAdapter = (int)EnumEnableDisableResult.Fail; } crtNetworkAdapter.Dispose(); return(resultEnableDisableNetworkAdapter); }
public NetworkAdapter(int deviceId) { ManagementObject crtNetworkAdapter = new ManagementObject(); string strWQuery = string.Format("SELECT DeviceID, ProductName, " + "NetEnabled, NetConnectionStatus " + "FROM Win32_NetworkAdapter " + "WHERE DeviceID = {0}", deviceId); try { ManagementObjectCollection networkAdapters = WMIOperation.WMIQuery(strWQuery); foreach (ManagementObject networkAdapter in networkAdapters) { crtNetworkAdapter = networkAdapter; break; } DeviceId = deviceId; Name = crtNetworkAdapter["ProductName"].ToString(); NetEnabled = ( Convert.ToBoolean(crtNetworkAdapter["NetEnabled"].ToString())) ? (int)EnumNetEnabledStatus.Enabled : (int)EnumNetEnabledStatus.Disabled; NetConnectionStatus = Convert.ToInt32( crtNetworkAdapter["NetConnectionStatus"].ToString()); } catch (NullReferenceException) { DeviceId = -1; Name = string.Empty; NetEnabled = 0; NetConnectionStatus = -1; } }
public int GetNetEnabled() { int netEnabled = (int)EnumNetEnabledStatus.Unknow; string strWQuery = string.Format("SELECT NetEnabled FROM Win32_NetworkAdapter " + "WHERE DeviceID = {0}", DeviceId); try { ManagementObjectCollection networkAdapters = WMIOperation.WMIQuery(strWQuery); foreach (ManagementObject networkAdapter in networkAdapters) { netEnabled = (Convert.ToBoolean(networkAdapter["NetEnabled"].ToString())) ? (int)EnumNetEnabledStatus.Enabled : (int)EnumNetEnabledStatus.Disabled; } } catch (NullReferenceException) { // If NullReferenceException return (EnumNetEnabledStatus.Unknow) } return(netEnabled); }