Registriert seit: 26. Nov 2003
Ort: Berlin
343 Beiträge
Delphi 2006 Professional
|
Re: USB Device ID auslesen
6. Nov 2004, 18:42
Update:
Ich habe jetzt mal bissl rumprobiert und komme mal wieder nicht weiter. Die Lib habe ich aus Luckie's SysInfo. Mein Problem ist das die if Abfrage immer false liefert. Irgendwas ist falsch ich weiß nur nicht was.
Delphi-Quellcode:
uses JwaWinIoctl;
procedure GetSerial: String;
var Dummy :DWord;
FHandle :Cardinal;
RealPath : String;
dg :CHANGER_PRODUCT_DATA; //falscher Datentyp? Laut SDK müsste es eigentlich
// MEDIA_SERIAL_NUMBER_DATA sein aber den gibs nicht
Serial : String;
i :byte;
begin
RealPath:=' \\.\F:';
FHandle:=CreateFile(PChar(RealPath),GENERIC_READ or GENERIC_WRITE, FILE_SHARE_READ or FILE_SHARE_WRITE, nil, OPEN_EXISTING, FILE_ATTRIBUTE_NORMAL, 0);
if DeviceIOControl(FHandle,IOCTL_STORAGE_GET_MEDIA_SERIAL_NUMBER, nil, 0, @dg, sizeof(dg), dummy, nil) then begin
Serial:=' ';
for i:=0 to 31 do Serial:=Serial+IntToStr(dg.SerialNumber[i]);
Result:=Serial;
end;
end;
end;
Inc(pDrive, 4);
end;
end;
Christian Reber
|
|
Zitat
|