Mira, aca te paso una de la unidades que uso para capturar los datos de la PC y cifrarlos... Fijate en la funcion
Generar.
Código Delphi
[-]
unit InfoPc; interface uses Windows, SysUtils, NB30; const METHOD_BUFFERED = 0; FILE_ANY_ACCESS = 0; FILE_DEVICE_MASS_STORAGE = $2D; IOCTL_STORAGE_BASE = FILE_DEVICE_MASS_STORAGE; IOCTL_STORAGE_QUERY_PROPERTY = (IOCTL_STORAGE_BASE shl 16) or (FILE_ANY_ACCESS shl 14) or ($500 shl 2) or METHOD_BUFFERED; type PSTORAGE_DESCRIPTOR_HEADER = ^TSTORAGE_DESCRIPTOR_HEADER; TSTORAGE_DESCRIPTOR_HEADER = packed record Version: ULONG; Size: ULONG; end; PSTORAGE_DEVICE_DESCRIPTOR = ^STORAGE_DEVICE_DESCRIPTOR; STORAGE_DEVICE_DESCRIPTOR = packed record Version: ULONG; Size: ULONG; DeviceType: UCHAR; DeviceTypeModifier: UCHAR; RemovableMedia: Boolean; CommandQueueing: Boolean; VendorIdOffset: ULONG; ProductIdOffset: ULONG; ProductRevisionOffset: ULONG; SerialNumberOffset: ULONG; BusType: ULONG; RawPropertiesLength: ULONG; RawDeviceProperties: array[0..0] of UCHAR; end;
Fijate si te sirve algo de todo esto... =)