Вниз
Скачать: CL | DM;

Данные системы   Найти похожие ветки 

 
gs   (2004-09-17 12:04) [0]

Не трудный, но специфический вопрос, как получить параметры системы такие, как например данные Bios.


 
Игорь Шевченко ©   (2004-09-17 12:29) [1]

Что-то можно из реестра получить.


 
gs   (2004-09-17 12:31) [2]

Но дату Bios же не получиш или я ошибаюсь. Если да, то как её получить?


 
Игорь Шевченко ©   (2004-09-17 13:26) [3]


> Но дату Bios же не получиш или я ошибаюсь


мягкий знак после шипящих ставят обычно в глаголах.

HKLM\Hardware\Description\System\SystemBiosDate


 
Unknown Mystic ©   (2004-09-17 14:00) [4]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621412&n=15

Мой вариант:

const
 BIOSDatePtr = $0FFFF5;
 SystemKey = "HARDWARE\DESCRIPTION\System";
 BiosDateParam = "SystemBiosDate";
var
 p: Pointer;
 sBiosDate: string[10];
 Key: HKey;

...

 if IsWinVer([wvNT, wvXP, wvY2K]) then
 begin
   // Считываем дату биоса
   Key := RegKeyOpenRead(HKEY_LOCAL_MACHINE, SystemKey);
   sBiosDate := RegKeyGetStr(Key, BiosDateParam);
   RegKeyClose(Key);
 end else
   try
     // Считываем дату биоса
     sBiosDate[0] := #8;
     p := Pointer(BIOSDatePtr);
     Move(p^, sBiosDate[1], 8);
   except
     FillChar(sBiosDate[1], 8, "9");
   end;

...


Кстати в примере из FAQ читать "VideoDate" из памяти у меня не получилось. По крайней мере у меня на компьютере константу VideoDatePtr пришлось менять на что-то другое.


 
Unknown Mystic ©   (2004-09-17 14:01) [5]

http://www.delphimaster.ru/cgi-bin/faq.pl?look=1&id=988621412&n=15

Мой вариант:

const
 BIOSDatePtr = $0FFFF5;
 SystemKey = "HARDWARE\DESCRIPTION\System";
 BiosDateParam = "SystemBiosDate";
var
 p: Pointer;
 sBiosDate: string[10];
 Key: HKey;

...

 if IsWinVer([wvNT, wvXP, wvY2K]) then
 begin
   // Считываем дату биоса
   Key := RegKeyOpenRead(HKEY_LOCAL_MACHINE, SystemKey);
   sBiosDate := RegKeyGetStr(Key, BiosDateParam);
   RegKeyClose(Key);
 end else
   try
     // Считываем дату биоса
     sBiosDate[0] := #8;
     p := Pointer(BIOSDatePtr);
     Move(p^, sBiosDate[1], 8);
   except
     FillChar(sBiosDate[1], 8, "9");
   end;

...


Кстати в примере из FAQ читать "VideoDate" из памяти у меня не получилось. По крайней мере у меня на компьютере константу VideoDatePtr пришлось менять на что-то другое.


 
Unknown Mystic ©   (2004-09-17 14:04) [6]

Прошу прощения - сервер сглючил :(

Под 98 виндой, у меня по крайней мере, ключа HKLM\Hardware\Description\System\SystemBiosDate в реестре нету.


 
gs   (2004-09-20 09:57) [7]

Спасибо ВСЕМ !



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.023 c
11-1078397629
Dimon
2004-03-04 13:53
2004.10.24
Как осуществить перенос текста в RichEdit (KOL)


1-1097336378
TRyaSS
2004-10-09 19:39
2004.10.24
логорифм по основанию n


8-1091169788
Руслан
2004-07-30 10:43
2004.10.24
Библиотеки для рисования схем


6-1092811600
DillerXX
2004-08-18 10:46
2004.10.24
Дайте линку на пример использования компонента TIdIRSserver


1-1097420959
Саид
2004-10-10 19:09
2004.10.24
Демка браузера в Delphi.




   Наверх