Delphi-PRAXiS

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Mainboard-ID (https://www.delphipraxis.net/124467-mainboard-id.html)

ok.de 19. Nov 2008 14:08


Mainboard-ID
 
Hallo,

Ich habe schon viel gegoogelt aber noch keine konkrete Antwort zu diesem Thema gefunden:
Ist es möglich, mit Delphi die ID des Mainboards auszulesen?

Über eine Lösung würde ich mich sehr freuen.

Olli

Sven M. 19. Nov 2008 14:15

Re: Mainboard-ID
 
Was meinst du konkret mit ID?
Die Seriennummer? Den Hersteller und das Fabrikat?

ok.de 19. Nov 2008 14:17

Re: Mainboard-ID
 
Ich meine das einmalige an einem Mainboard, das wird dann wohl die Seriennummer sein.

mkinzler 19. Nov 2008 14:19

Re: Mainboard-ID
 
Diese ist aber nicht unbedingt einmalig, denn ein MB eines anderen Herstellers oder Baureihe könnte die selbe haben.

Sir Rufo 19. Nov 2008 14:28

Re: Mainboard-ID
 
Liste der Anhänge anzeigen (Anzahl: 1)
Zitat:

Zitat von ok.de
Ich meine das einmalige an einem Mainboard, das wird dann wohl die Seriennummer sein.

Ja,
- wenn von dem gleichen Hersteller
- wenn der auch für alle produzierten Boardserien (für sich) globale eindeutige Seriennummern vergibt (da gibt es glaube ich keine DIN für, ob er das machen muss)
- wenn das Board die Seriennummer (bzw. das BIOS) auch herausgibt (sonst muss du deinem Programm noch einen Schraubendreher und Taschenlampe beigeben) :mrgreen:

Ansonsten schau dir mal die Units im Anhang an, damit bekommt man auch die Seriennummer aus dem BIOS gelesen (äh, wenn vorhanden).

cu

Oliver

ok.de 19. Nov 2008 14:56

Re: Mainboard-ID
 
Also, erst mal vielen Dank.
Delphi-Quellcode:
var
  biosInfo: TBiosInfo;
  biosSys: TBiosSystemInfo;
begin
  biosInfo := TBiosInfo.Create;
  biosSys := biosInfo.BiosSystem;
  ShowMessage(biosSys.SerialNumber);
  biosInfo.Destroy;
end;
Ist der Aufruf richtig? Ich bekomme eine leere Meldung.

Sir Rufo 19. Nov 2008 14:59

Re: Mainboard-ID
 
Zitat:

Zitat von ok.de
Also, erst mal vielen Dank.

... bitte ...
Zitat:

Zitat von ok.de
Delphi-Quellcode:
var
  biosInfo: TBiosInfo;
  biosSys: TBiosSystemInfo;
begin
  biosInfo := TBiosInfo.Create;
  biosSys := biosInfo.BiosSystem;
  ShowMessage(biosSys.SerialNumber);
  biosInfo.Destroy;
end;
Ist der Aufruf richtig? Ich bekomme eine leere Meldung.

Ja, so geht der Aufruf ... aber ich habe bisher nur bei namhaften Herstellern da eine SN lesen können (z.B. DELL, Wincor, ... )

cu

Oliver

littleDave 19. Nov 2008 15:06

Re: Mainboard-ID
 
[ot]Ich hab sowieso die beste Mainboard-ID: "To Be Filled By O.E.M." :mrgreen:[/ot]

ok.de 19. Nov 2008 15:12

Re: Mainboard-ID
 
Zitat:

Zitat von Sir Rufo
Ja, so geht der Aufruf ... aber ich habe bisher nur bei namhaften Herstellern da eine SN lesen können (z.B. DELL, Wincor, ... )

Tja, ich habe einen Dell - Ich werds mal auf anderen Rechnern probieren. Vielleicht gehts da ja. Und sonst nehm ich einfach die Prozessor-SN, die ändert sich auch nicht so oft.

devidespe 19. Nov 2008 15:34

Re: Mainboard-ID
 
Die Mainboard-ID kommt aus dem DMI-Bereich des Mainboards, und dieser ist nur bei wenigen Herstellern korrekt befüllt (etwa Dell, Fujitsu-Siemens und generell allen Notebooks und einigen Servern).

Bei Desktops sieht es schlechter aus, da die Hersteller selten relevante Daten eintragen. To Be Filled oder 00000000 oder 1234567890 sind hier häufig vorzufinden.

Beim Prozessor sieht es - mit Ausnahme des Pentium 3 (wenn die Seriennummernfunktion nicht abgeschaltet wurde) vergleichbar aus, denn ich kann 2 gleiche Prozessoren nicht anhand irgendeiner Nummer unterscheiden.

Es kommt darauf an, was Du mit einer Mainboard ID bezweckst und ob dafür nicht besser eine Windows GUID geeigneter wäre.

ok.de 19. Nov 2008 16:11

Re: Mainboard-ID
 
Ich möchte einen PC wiedererkennen.
Wenn es stimmt, was du sagst... gibt es überhaupt einen Wert im PC, der sich nicht ändert und auch noch möglichst einzigartig ist? Wie funktionieren denn sonst die "großen" Programme wie Office, Kaspersky etc.? Sie brauchen ja auch ein eindeutiges Merkmal an einem Computer, sonst könnte die Internetaktivierung ja nicht funktionieren.. oder habe ich was übersehen?

Sir Rufo 19. Nov 2008 16:16

Re: Mainboard-ID
 
z.B. Microsoft WSUS - erzeugen eine GUID

devidespe 19. Nov 2008 16:33

Re: Mainboard-ID
 
Die GUID hat sich als quasi einzigartiger Wert etabliert.

Es gibt zwar auch Anwendungen, die verschiedene Details wie BIOS-ID und Kennung sowie Prozessorkennungen übertragen, wenn ich aber 2 gleiche Rechner nehme, sind die Daten identisch.

Mit einer GUID wäre das theoretisch zwar auch möglich, aber nur dann, wenn die Rechner zur exakt gleichen Zeit installiert wurden (da die Erstellungszeit mit in die GUID-Berechnung einfließt) und alle Merkmale gleich sind. Die Wahrscheinlichkeit liegt aber im so geringen Bereich, dass man darüber kaum spekuieren sollte.

GUID steht übrigens für Globally Unique Identifier (globale einzigartige Identifizierung), Details siehe hier bei Wikipedia.

Sir Rufo 19. Nov 2008 16:41

Re: Mainboard-ID
 
Zitat:

Zitat von devidespe
Mit einer GUID wäre das theoretisch zwar auch möglich, aber nur dann, wenn die Rechner zur exakt gleichen Zeit installiert wurden (da die Erstellungszeit mit in die GUID-Berechnung einfließt) und alle Merkmale gleich sind. Die Wahrscheinlichkeit liegt aber im so geringen Bereich, dass man darüber kaum spekuieren sollte.

Nicht nur die Erstellungszeit
Zitat:

Zitat von Wikipedia
Wenn man nun eine Zahl aus seiner Netzwerkkarten-Nummer (MAC-Adresse) und dem Zeitpunkt zusammensetzt, [...]

von daher sehr unwahrscheinlich und im gleichen Netz quasi tödlich ... das würd man also merken, wenn die MACs gleich sind.

cu

Oliver

devidespe 19. Nov 2008 16:47

Re: Mainboard-ID
 
Zitat:

Zitat von Sir Rufo
Zitat:

Zitat von devidespe
Mit einer GUID wäre das theoretisch zwar auch möglich, aber nur dann, wenn die Rechner zur exakt gleichen Zeit installiert wurden (da die Erstellungszeit mit in die GUID-Berechnung einfließt) und alle Merkmale gleich sind. Die Wahrscheinlichkeit liegt aber im so geringen Bereich, dass man darüber kaum spekuieren sollte.

Nicht nur die Erstellungszeit

Richtig, nicht nur die Erstellungszeit, sondern auch viele weitere Faktoren, die MS wohl nie veröffentlichen wird.

Zitat:

Zitat von Sir Rufo
von daher sehr unwahrscheinlich und im gleichen Netz quasi tödlich ... das würd man also merken, wenn die MACs gleich sind.

Die MAC-Adresse wird auch von einigen Produkten verwendet, das setzt allerdings eine Netzwerkkarte voraus und ist unsicher, da MAC-Adressen heutzutage per Software änderbar sind. Deswegen sind MAC-Filter in WLAN-Routern heutzutage keine wirkungsvolle Schutzmaßnahme mehr.

Wikipedia meint: Jede GUID ist sehr wahrscheinlich einmalig. Das sagt doch schon alles.

ok.de 19. Nov 2008 17:34

Re: Mainboard-ID
 
Hat zufällig jemand eine Methode zum Auslesen der GUID zur Hand?

Sir Rufo 19. Nov 2008 17:38

Re: Mainboard-ID
 
welche?

Macci 19. Nov 2008 21:50

Re: Mainboard-ID
 
Zitat:

Zitat von devidespe
Die MAC-Adresse wird auch von einigen Produkten verwendet, das setzt allerdings eine Netzwerkkarte voraus und ist unsicher, da MAC-Adressen heutzutage per Software änderbar sind. Deswegen sind MAC-Filter in WLAN-Routern heutzutage keine wirkungsvolle Schutzmaßnahme mehr.

Hallo,

die MAC-Adresse der Netzwerkkarte ist durchaus eindeutig, man kann sogar anhand der MAC-Adresse auf den Hersteller der Netzwerkkarte schlißen. Man kann die MAC-Adresse übrigens nicht (ohne weiteres) ändern, das was du meinst ist was anderes: Man kann die meisten Netzwerkkarten in einen Mischmodus versetzen, so dass sie jedes Paket (egal mit welcher MAC-Adresse) an den Prozessor weiterleiten und umgekehrt auch mit einer beliebigen MAC-Adresse als Absender Pakete schicken können. Das wird aber nur in wenigen Fällen benötigt (z.B. wenn man eine Netzwerkanalyse betreiben möchte), im Normalfall läuft die Netzwerkkarte nicht in diesem "Mischmodus". Nichtsdestoweniger bleibt die vom Hersteller in die Netzwerkkarte eingravierte MAC-Adresse dabei unverändert.

Viele Grüsse,
Macci

jfheins 19. Nov 2008 22:47

Re: Mainboard-ID
 
Zitat:

Zitat von Macci
Zitat:

Zitat von devidespe
Die MAC-Adresse wird auch von einigen Produkten verwendet, das setzt allerdings eine Netzwerkkarte voraus und ist unsicher, da MAC-Adressen heutzutage per Software änderbar sind. Deswegen sind MAC-Filter in WLAN-Routern heutzutage keine wirkungsvolle Schutzmaßnahme mehr.

Hallo,

die MAC-Adresse der Netzwerkkarte ist durchaus eindeutig, man kann sogar anhand der MAC-Adresse auf den Hersteller der Netzwerkkarte schlißen. Man kann die MAC-Adresse übrigens nicht (ohne weiteres) ändern, das was du meinst ist was anderes: Man kann die meisten Netzwerkkarten in einen Mischmodus versetzen, so dass sie jedes Paket (egal mit welcher MAC-Adresse) an den Prozessor weiterleiten und umgekehrt auch mit einer beliebigen MAC-Adresse als Absender Pakete schicken können. Das wird aber nur in wenigen Fällen benötigt (z.B. wenn man eine Netzwerkanalyse betreiben möchte), im Normalfall läuft die Netzwerkkarte nicht in diesem "Mischmodus". Nichtsdestoweniger bleibt die vom Hersteller in die Netzwerkkarte eingravierte MAC-Adresse dabei unverändert.

Viele Grüsse,
Macci

Hmmm .. eine kurze Suche ergab das hier - und das sieht schon ziemlich doll danach aus ;)

(Ic hhabs kurz installiert, aber meine mac nicht wirklich geändert ...)

devidespe 20. Nov 2008 08:50

Re: Mainboard-ID
 
Zitat:

Zitat von Macci
die MAC-Adresse der Netzwerkkarte ist durchaus eindeutig, man kann sogar anhand der MAC-Adresse auf den Hersteller der Netzwerkkarte schlißen. Man kann die MAC-Adresse übrigens nicht (ohne weiteres) ändern, das was du meinst ist was anderes: Man kann die meisten Netzwerkkarten in einen Mischmodus versetzen, so dass sie jedes Paket (egal mit welcher MAC-Adresse) an den Prozessor weiterleiten und umgekehrt auch mit einer beliebigen MAC-Adresse als Absender Pakete schicken können. Das wird aber nur in wenigen Fällen benötigt (z.B. wenn man eine Netzwerkanalyse betreiben möchte), im Normalfall läuft die Netzwerkkarte nicht in diesem "Mischmodus". Nichtsdestoweniger bleibt die vom Hersteller in die Netzwerkkarte eingravierte MAC-Adresse dabei unverändert.

Wieso existieren dann hier verschiedenste Befehle für unterschiedliche Betriebssysteme, um die MAC-Adresse zu ändern ?

ok.de 20. Nov 2008 12:39

Re: Mainboard-ID
 
Zitat:

Zitat von Sir Rufo
welche?

Welche bietet sich denn an, wenn man einen PC möglichst dauerhaft wiedererkennen möchte?
Zitat:

Zitat von Sir Rufo
z.B. Microsoft WSUS - erzeugen eine GUID

Ist das nicht was?
Ich bin nicht gerade Spezialist auf dem Gebiet GUIDs.

ok.de 21. Nov 2008 15:07

Re: Mainboard-ID
 
Weiß niemand, wie man die auslesen kann?

Macci 22. Nov 2008 02:22

Re: Mainboard-ID
 
Zitat:

Zitat von devidespe
Wieso existieren dann hier verschiedenste Befehle für unterschiedliche Betriebssysteme, um die MAC-Adresse zu ändern ?

Hallo,

Wikipedia ist hier sehr undeutlich. Die WAHRE, vom Hersteller eingebrannte MAC-Adresse kann man - wie ich schon sagte, nicht (oder nur mit sehr erheblichem Aufwand) ändern. Wenn man nach deiner Methode (oder so wie es @jfheins beschrieben hat) - das entspricht übrigens genau dem von mir beschriebenen Mischmodus - vorgeht, kann man die vom Hersteller eingebrannt MAC-Adresse jederzeit wieder herstellen. Aber die echte, eingebrannte MAC-Adresse der Netzwerkkarte wird bei keiner dieser Methoden geändert.

Zitat:

Restore The TRUE Hardware burned-in MAC Address:
[...]
(siehe: http://www.klcconsulting.net/Change_MAC_w2k.htm)

Viele Grüsse,
Macci


Alle Zeitangaben in WEZ +1. Es ist jetzt 19:18 Uhr.

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz