![]() ![]() End TSendCmdInParams = packed record // Buffer size in bytes cBufferSize: DWORD // Structure with drive register values. BReserved: BYTE // reserved for future use. BSectorCountReg: BYTE // IDE sector count register bSectorNumberReg: BYTE // IDE sector number register bCylLowReg: BYTE // IDE low order cylinder value bCylHighReg: BYTE // IDE high order cylinder value bDriveHeadReg: BYTE // IDE drive/head register bCommandReg: BYTE // Actual IDE command. See also my articles on delphi3000: 1204 'IDE harddisk serial number (Part 2)' 1174 'SCSI-2 device serial number' // Get first IDE harddisk serial number function GetIdeSerialNumber: SerialNumber const IDENTIFYBUFFERSIZE = 512 type TIDERegs = packed record bFeaturesReg: BYTE // Used for specifying SMART 'commands'. Now you can get real serial number of IDE hardisk. Of course, volume serial numbers for these disks are identical. Some companies use cloning tools for installing software on all new computers by copying from the single harddisk to all another. It is assigned and changed during formatting of partition. But it is the volume serial number, not harddisk s/n. ![]() 原贴: original Most FAQ manuals recommend to use GetVolumeInformation for extracting of 'harddisk serial number'. ![]() Delphi Hard Disk Physical Serial Number. ![]()
0 Comments
Leave a Reply. |
AuthorWrite something about yourself. No need to be fancy, just an overview. ArchivesCategories |