GRom V Цитата: как сделать например по проверке серийника винчестера
Если с делфи дружишь, можешь оформить в виде длл следующий код:
Код: function SerialNumberDisk(disk: string): string;
var
VolumeName : array [0..MAX_PATH-1] of Char;
FileSystemName : array [0..MAX_PATH-1] of Char;
VolumeSerialNo : DWord;
MaxComponentLength : DWord;
FileSystemFlags : DWord;
function GetReplaceCDNumber(num: String): String;
var
i, len: Integer;
begin
Result:= '';
len:= Length(num);
if len <> 8 then exit;
for i:= 1 to (len div 2) do begin
Dec(len);
Result:= Result + num[len ];
Result:= Result + num[len + 1];
Dec(len);
end;
end;
begin
GetVolumeInformation(PChar(disk), VolumeName, MAX_PATH, @VolumeSerialNo, MaxComponentLength,
FileSystemFlags, FileSystemName, MAX_PATH);
Result:= IntToHex(Integer(VolumeSerialNo), 8);
if Win32Platform <> VER_PLATFORM_WIN32_NT then
Result:= GetReplaceCDNumber(Result);
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
Label1.Caption:= SerialNumberDisk('c:\');
end;