Beispiel #1
0
        public List<EthernetDTOResponse> GetEthernetInfo()
        {
            List<EthernetDTOResponse> ethetnets = new List<EthernetDTOResponse>();

            try
            {
                SelectQuery query = new SelectQuery(
                    @"select Name,  MACAddress, Speed, GUID
                      from Win32_NetworkAdapter
                      where MACAddress<>null and PhysicalAdapter=true"
                );
                ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);

                foreach (ManagementObject obj in searcher.Get())
                {
                    EthernetDTOResponse eth = new EthernetDTOResponse();
                    eth.Label = GetValueAsString(obj, "Name");
                    eth.Mac = GetValueAsString(obj, "MACAddress");
                    eth.Speed = GetValueAsString(obj, "Speed");

                    try
                    {
                        SelectQuery queryAdapterConf = new SelectQuery(
                            @"select IPAddress,  IPSubnet
                              from Win32_NetworkAdapterConfiguration
                              where SettingID='" + GetValueAsString(obj, "GUID") + "'"
                        );
                        ManagementObjectSearcher adapterConfSearcher = new ManagementObjectSearcher(queryAdapterConf);

                        foreach (ManagementObject adapterConf in adapterConfSearcher.Get())
                        {
                            try
                            {
                                eth.IPAddress = ((string[]) adapterConf["IPAddress"])[0];
                                eth.IPSubnet = ((string[]) adapterConf["IPSubnet"])[0];
                            }
                            catch (ManagementException e)
                            {
                                Logger.Instance.LogError(e.ToString());
                            }
                            catch (Exception)
                            {
                            }

                            break;
                        }
                    }
                    catch (ManagementException e)
                    {
                        Logger.Instance.LogError(e.ToString());
                    }

                    ethetnets.Add(eth);
                }
            }
            catch (ManagementException e)
            {
                Logger.Instance.LogError(e.ToString());
            }

            return ethetnets;
        }
Beispiel #2
0
        public List<EthernetDTOResponse> GetEthernetInfo()
        {
            List<EthernetDTOResponse> ethetnets = new List<EthernetDTOResponse>();

            try
            {
                SelectQuery query = new SelectQuery(
                    @"select Name,  MACAddress, Speed, Index
                      from Win32_NetworkAdapter
                      where MACAddress<>null"
                );
                ManagementObjectSearcher searcher = new ManagementObjectSearcher(query);

                foreach (ManagementObject obj in searcher.Get())
                {
                    string mac = GetValueAsString(obj, "MACAddress");
                    if (Blacklists.IsMacInBlacklist(mac))
                    {
                        continue;
                    }

                    EthernetDTOResponse eth = new EthernetDTOResponse();
                    eth.Label = GetValueAsString(obj, "Name");
                    eth.Mac = GetValueAsString(obj, "MACAddress");
                    eth.Speed = GetValueAsString(obj, "Speed");

                    try
                    {
                        SelectQuery queryAdapterConf = new SelectQuery(
                            @"select IPAddress,  IPSubnet
                              from Win32_NetworkAdapterConfiguration
                              where Index='" + GetValueAsString(obj, "Index") + "' and IPEnabled=True"
                        );
                        ManagementObjectSearcher adapterConfSearcher = new ManagementObjectSearcher(queryAdapterConf);

                        foreach (ManagementObject adapterConf in adapterConfSearcher.Get())
                        {
                            try
                            {
                                eth.IPAddress = ((string[]) adapterConf["IPAddress"])[0];
                                eth.IPSubnet = ((string[]) adapterConf["IPSubnet"])[0];

                                ethetnets.Add(eth);
                            }
                            catch (ManagementException e)
                            {
                                Logger.Instance.LogError(e.ToString());
                            }
                            catch (Exception e)
                            {
                                Logger.Instance.LogError(e.ToString());
                            }

                            break;
                        }
                    }
                    catch (ManagementException e)
                    {
                        Logger.Instance.LogError(e.ToString());
                    }
                }
            }
            catch (ManagementException e)
            {
                Logger.Instance.LogError(e.ToString());
            }

            return ethetnets;
        }