Delphi-PRAXiS
Seite 1 von 2  1 2      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Seriennummer der Festplatte bzw. Diskette auslesen! (https://www.delphipraxis.net/4908-seriennummer-der-festplatte-bzw-diskette-auslesen.html)

MikeS 16. Mai 2003 14:16


Seriennummer der Festplatte bzw. Diskette auslesen!
 
Moin

Hab da mal ne frage zu GetVolumeInformation!

das mit dem Befehl hab ich verstanden! mich interresiert jetzt wie kann ich die seriennummer ausgeben? hab das problem das dort immer eine null zu sehen ist!

sakura 16. Mai 2003 14:54

Der Code sollte gehen (inkl. Tippfehlern)
Delphi-Quellcode:
procedure TForm1.Button1OnClick(Sender: TObject);
var
  Root: array[0..20] of Char;
  FileSysName, VolName: array[0..255] of Char;
  SerialNum, MaxCLength, FileSysFlag: DWORD;
begin
  Root := 'C:\';
  GetVolumeInformation(Root, VolName, 255, @SerialNumber, MaxCLength,
      FileSysFlag, FileSysName, 255);
  Label1.Caption := IntToHex(SerialNum, 8);
end;
...:cat:...

MikeS 16. Mai 2003 17:49

alles klar!

Danke

Jens Schumann 16. Mai 2003 19:33

Hallo,
Achtung: Mit GetVolumeInformation erhälst Du die logische Seriennummer
der Platte. Diese Nummer wird beim formattieren der Platte vom
OS vergeben. Nach jeder Formattierung ändert sich diese Nummer. Daraus folgt, diese Seriennummer hat nichts mit
der Serienummer zu tun, die der Hersteller vergibt.

eddy 17. Mai 2003 10:06

Hallo Jens!

Dieser Hinweis hat mir gefehlt. :idea: Ich hab' schon gedacht, daß es mit den großen Platten nicht funktioniert, weil ich ja für jede Partition einen anderen Wert erhalte.

Weiß jemand, wie man die vom Hersteller vergebene Serien-Nummer einer Festplatte auslesen kann?

mfg
eddy

Christian Seehase 17. Mai 2003 12:40

Moin eddy,

unter Windows 2000 (wahrscheinlich auch XP, eventuell NT) sollte man dies für IDE Platten aus der Registry auslesen können.

Unter
HKLM\SYSTEM\CurrentControlSet\Enum\IDE

stehen die Keys der IDE Festplatten. Der Name des Keys endet, zumindest bei Festplatten, mit der Seriennummer. Schau's Dir am Bestem mal selber an.

eddy 21. Mai 2003 00:31

Hallo Christian,

vielen Dank für den Tip. (Habe erst heute wieder Zeit gefunden, im Forum zu stöbern.)

Unter Win98 SE habe ich in der Registry die SN nicht gefunden, unter Win2000 war ich dank Deines Hinweises etwas erfolgreicher.

Unter HKEY_LOCAL_MACHINE/SYSTEM/ControlSet001/Enum/IDE habe ich den Eintrag gefunden.


mfg
eddy

Luckie 21. Mai 2003 01:18

Ich hoffe, du öffnest den Schlüssel nur lesend?

Christian Seehase 24. Mai 2003 00:06

Moin eddy,

wichtig ist den Key unter CurrentControlSet zu nehmen.
ControlSet00x ist nur ein Profil, das mal gelaufen ist, Current ist das aktuell aktive Profil.

X-Dragon 14. Nov 2003 15:20

Re: Seriennummer der Festplatte bzw. Diskette auslesen!
 
Gibts nicht auch eine Möglichkeit die Seriennummer direkt auszulesen? da sie sonst immer wo anders in der Registry(je nach Betriebsystem) zu finden ist und evtl manipuliert werden kann.


Alle Zeitangaben in WEZ +1. Es ist jetzt 08:57 Uhr.
Seite 1 von 2  1 2      

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