Ich versuche (mehr oder weniger) ein System eindeutig für Lizenzierungszwecke zu identifizieren. Ich habe für diese Aufgabe die MAC-Adresse des Computer-On-Board-Netzwerkadapters gewählt, da ich sicher sein kann, dass jeder Cmputer, der diese Software ausführt, tatsächlich eine hat, und dies vermeidet eine erneute Aktivierung, wenn z. die Festplatte.Wie bekomme ich zuverlässig die MAC-Adresse des Computers an Bord des Netzwerkadapters?
Ich habe Probleme, den Onboard-Netzwerkadapter jedoch zuverlässig zu identifizieren.
Mit der Managementklasse "Win32_NetworkAdapterConfiguration" kann ich viele MAC-Adressen bekommen, einschließlich der Adresse, die ich mag, aber ich habe keine Möglichkeit gefunden, das Onboard von virtuellen Adaptern zu unterscheiden, die von Windows- oder Virenscannern installiert wurden. Diese Liste scheint jedoch geordnet zu sein. Die MAC-Adresse, die mich interessiert, ist (auf meinem Rechner) vor anderen (echten) Netzwerkadaptern aufgeführt. (Die Liste von Schnittstellenindex bestellt wird.)
Mit NetworkInterface.GetAllNetworkInterfaces()
, ich glaube, ich durch Filterung auf .NetworkInterfaceType == NetworkInterfaceType.Ethernet
die realen Netzwerkadapter identifizieren, aber diese Liste scheint ungeordnet zu sein (eine zusätzliche Netzwerkkarte erscheint vor dem onboards eins).
Verwenden Sie zuerst die zweite Methode, um eine Liste von echten Netzwerkkarten zu erhalten und dann sortieren sie nach der Reihenfolge der Auftritt in der ersten Liste eine zuverlässige Möglichkeit zur Identifizierung der MAC-Adresse, die ich suche? Kann sich der Schnittstellenindex in der ersten Liste ändern? Ich würde mich freuen, Ihre Gedanken zu hören!
Danke!
S.S .: Ich weiß, dass die MAC-Adresse ziemlich leicht geändert werden kann, aber ich kann damit leben. Ich kann nicht damit leben, dass der Kunde die Software nach dem Einstecken eines WLAN-Sticks nicht benutzen kann =)
Warum nicht alle MAC-Adressen von Interface-Typ-Ethernet zwischenspeichern? –
@rdkleine: Dies würde die Aktivierung unterbrechen, wenn ein anderer Netzwerkadapter hinzugefügt wird. – Jens
Sie können alle Adapter mit allen zwischengespeicherten vergleichen. Ein Paar ist genug, oder? –