Дмитрий |
Отправлено: 27.11.2003, 23:38 |
|
Не зарегистрирован
|
Подскажите, как можно узнать серийный номер материнки или др. уникального устройства. Задача такая: Чтобы программа запускалась только на данном компьютере. |
|
Admin |
Отправлено: 09.12.2003, 20:26 |
|
Владимир
Группа: Администратор
Сообщений: 1190
|
http://blackman.wp-club.net/myfaq/faq9f.php
CODE |
Как получить информацию о БИОСе?
18 сен 2001 (вторник), 10:27:48
Как получить информацию о БИОСе?
--------------------------------------------------------------------------------
Вот пример как можно даты БИОС материнской платы и видеокарты выдрать.
То же самое можно с названием производителя и версией.
В WinNT приходится читать не из ПЗУ а из реестра но это достаточно надежно
- соотв ключи WinNT закрывает на запись и обновляет при каждом старте (?).
Для Win9x можешь хоть весь БИОС напрямую читать.
Получить заводской номер винчестера (не тот что getvolumeinfo дает) ИМХО
невозможно — порты IDE даже Win9x блокирует.
typeT
> OSisNT then begin with TRegistryRO.Create do
try RootKey := HKEY_LOCAL_MACHINE;
if OpenKeyRO (SystemKey) then
begin
s := ReadString (BiosDateParam);
end;
finally
Free;
end; { of try}
end
else
(VideoDatePtr + 60 + 250);
Move (p^, s[1], 255);
if pos('/', s) > 2 then s := copy (s, pos('/', s) — 2, 8);
end; except FillChar (s[1], 8, '9');
end; { of try}
Result := copy (s, 1, 2) + copy (s, 4, 2) + copy (s, 7, 2);
end;
unit WAPIInfo;interfaceuses Registry, SysUtils, Window
b>if s = 'SERVERNT' then OSStr := OSStr + ' Server 3.5 & hi'
else if s = 'LANMANNT' then OSStr := OSStr + ' Advanced server 3.1';
Reg.Free;
end;
end;
with OSVerInfo do OSStr := OSStr + Format (' %d.%d (выпуск %d)',
[dwMajorVersion, dwMinorVersion, LoWord(dwBuildNumber)]);
end;f
unction OSisNT : 24]);
end;
end.
PS Возможно, эти процедуры не всегда дату возвращают;)
но то что практически всегда для разных материнских/видео
плат возвращаются разные значения — проверено, что мне
собственно и требовалось.
Andrey Sorokin from sunny;) Saint-Petersburg anso@mail.ru
Russian Technology http://attend.to/rt anso@rt.spb.ru
|
|
|
|