Beispiel #1
0
        static void Main(string[] args)
        {
            var vendorInfoProvider = new MacAddressVendorLookup.MacVendorBinaryReader();

            using (var resourceStream = MacAddressVendorLookup.ManufBinResource.GetStream().Result)
            {
                vendorInfoProvider.Init(resourceStream).Wait();
            }
            var addressMatcher = new MacAddressVendorLookup.AddressMatcher(vendorInfoProvider);

            var networkInterfaces = System.Net.NetworkInformation.NetworkInterface.GetAllNetworkInterfaces()
                                    .Where(ni => ni.NetworkInterfaceType != System.Net.NetworkInformation.NetworkInterfaceType.Tunnel)
                                    .Where(ni => ni.NetworkInterfaceType != System.Net.NetworkInformation.NetworkInterfaceType.Loopback)
                                    .Where(ni => !ni.GetPhysicalAddress().Equals(System.Net.NetworkInformation.PhysicalAddress.None));

            foreach (var ni in networkInterfaces)
            {
                var vendorInfo = addressMatcher.FindInfo(ni.GetPhysicalAddress());
                Console.WriteLine("\nAdapter: " + ni.Description);
                Console.WriteLine($"\t{vendorInfo}");
                var macAddr = BitConverter.ToString(ni.GetPhysicalAddress().GetAddressBytes()).Replace('-', ':');
                Console.WriteLine($"\tMAC Address: {macAddr}");
            }
            Console.ReadKey();
        }
 public void ManufBinReaderTest()
 {
     using (var resourceStream = MacAddressVendorLookup.ManufBinResource.GetStream().Result)
     {
         var reader = new MacAddressVendorLookup.MacVendorBinaryReader();
         reader.Init(resourceStream).Wait();
         Assert.IsTrue(reader.GetEntries().Count() > 1, "BinaryReader did not get any vendor info entries");
     }
 }