Frage

welche Art von "einzigartig" system-IDS können problemlos abgerufen werden, mithilfe von C# (hash und dann eindeutig zu identifizieren-system)?Ich konnte nur hash-HDD-Größe und Dinge wie das, aber ich brauche zu identifizieren und zu unterscheiden, Computer, die sind alle gebaut von der gleichen Komponenten, so kann ich nicht gehen durch, dass.

Schätzen Sie Tipps, Ideen, Beispielcode!

War es hilfreich?

Lösung

Hier ist ein guter Start mit WMI ...

// Win32_CPU will work too
var search = new ManagementObjectSearcher( "SELECT * FROM Win32_baseboard" );
var mobos = search.Get();

foreach (var m in mobos)
{
  var serial = m["SerialNumber"]; // ProcessorID if you use Win32_CPU
}

Sie können das tun mit vielen Stücken von Hardware und kommen mit einer Lösung.

Andere Tipps

Sie können über die System.Management Namespace erhalten alle Sachen auf die Hardware, processorID, MAC-Adressen und viele weitere Informationen Sie Hash können dann zusammen verwendet.

Werfen Sie einen Blick auf diesen Artikel:

http://www.codeproject.com/KB/system/GetHardwareInformation.aspx

Vorausgesetzt, Sie über Windows reden, dann wird jede Windows-Installation hat eine einzigartige Produkt-ID (die Sie sehen können, wenn Sie die Eigenschaften von Arbeitsplatz sehen kann). Ich denke, das in HKEY_LOCAL_MACHINE\Software\Microsoft\Windows NT\CurrentVersion:ProductId(REG_SZ) gespeichert ist. Ich nehme an, Sie wollen mehr als das?

Sie können mit WMI mit C # ziemlich viel Informationen über die Hardware zu erhalten.

Festplatten-IDs und Ethernet-MAC-Adresse sind zwei gemeinsame eindeutige Kennungen in Systemidentifikationssystemen verwendet. Die MAC-Adresse ist in der Theorie, einzigartige pro Netzwerkkarte.

Netzwerkkarte MAC-Adresse:

foreach (NetworkInterface ni in NetworkInterface.GetAllNetworkInterfaces())
{
    // probably need to do some filtering on ni.NetworkInterfaceType here
    Console.WriteLine(ni.GetPhysicalAddress());
}

Man konnte sich in der Verwendung GUID

Was ist eine GUID

Für diejenigen von Ihnen, die nicht wissen, eine GUID (sprich: goo ' iid - Globally unique identifier) ist eine 128-bit-Ganzzahl, die verwendet werden können, um eindeutig etwas.Sie können Shop-Nutzern oder Produkte, die in Ihrer Datenbank und Sie möchten irgendwie eindeutig zu identifizieren, jede Zeile in der Datenbank.Ein gemeinsamer Ansatz ist die Erstellung eine autoincrementing integer, ein anderer Weg wäre, um eine GUID zu erstellen, die für Ihre Produkte.

So erstellen Sie eine GUID in C#

Die GUID-Methode finden Sie im System-namespace.Die GUID-Methode-System.Guid.NewGuid() initialisiert eine neue Instanz der GUID-Klasse.

Es gibt auch ein paar überladungen zur Verfügung, für diejenigen, die wollen, dass die GUID formatiert, die in einer bestimmten Weise.

Im folgenden Beispiel wird die Ausgabe der GUID generiert, der source code ist auch unten.

Response.Write(@"<br>System.Guid.NewGuid().ToString() = " + System.Guid.NewGuid().ToString());
Response.Write(@"<br>System.Guid.NewGuid().ToString(""N"") = " + System.Guid.NewGuid().ToString("N"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""D"") = " + System.Guid.NewGuid().ToString("D"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""B"") = " + System.Guid.NewGuid().ToString("B"));
Response.Write(@"<br>System.Guid.NewGuid().ToString(""P"") = " + System.Guid.NewGuid().ToString("P"));
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top