A freely downloadable DLL (50KB) is available here. This library can be used to create licensing systems, where the user can get a unique serial number based on its hardware ID combined with its name - serial which will work only in his computer.
The DLL contains a total of 13 functions calling native Delphi code, Windows API and assembler. 10 of these functions are exported and fully available.
Exported functions:
// CPU
function GetCPUSpeed: Double;
function CPUFamily: ShortString; { Get cpu identifier from the windows registry }
function GetCpuTheoreticSpeed: Integer; { Get cpu speed (in MHz) }
function IsCPUIDAvailable: Boolean; Register;
function GetCPUID (CpuCore: byte): ShortString;
Function GetCPUVendor: ShortString;
// RAM
function MemoryStatus (MemType: Integer): cardinal; { in Bytes }
function MemoryStatus_MB (MemType: Integer): ShortString; { in MB }
// HDD
function GetPartitionID (Partition : PChar): ShortString; { Get the ID of the specified patition. Example of parameter: 'C:' }
function GetIDESerialNumber(DriveNumber: Byte ): PChar; { DriveNr is from 0 to 4 }
MemoryStatus function can dispaly:
MemoryLoad { Total memory used in percentage (%) }
TotalPhys { Total physical memory in bytes}
AvailPhys { Physical memory left in bytes}
TotalPageFile { Total page file in bytes}
AvailPageFile{ Page file left in bytes}
TotalVirtual{ Total virtual memory in bytes}
AvailVirtual { Virtual memory left in bytes}
The library was tested under Delphi 7, Delphi 2006 and Delphi 2007.
The library was tested under Windows 98, Windows XP and Windows Vista.
Soon we will add:
- Mainboard hardware ID detection
- BIOS hardware ID detection
- network card hardware ID (MAC) detection

Related words: Get disk serial, real hard drive serial number, hardware ID number, programming code, DLL library, extract hardware info, get CPU producer frequency and producer |