Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.10.24;
Скачать: 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 вся ветка

Текущий архив: 2004.10.24;
Скачать: CL | DM;

Наверх




Память: 0.46 MB
Время: 0.039 c
3-1096028098
Плюс
2004-09-24 16:14
2004.10.24
Как установить BDE?


3-1096105827
Плюс
2004-09-25 13:50
2004.10.24
Проблемы установки


8-1090940955
Аним
2004-07-27 19:09
2004.10.24
Анимация


3-1096350232
Нович[Ок]
2004-09-28 09:43
2004.10.24
Использование БД при написании системы "СКЛАД"


6-1092601915
r0n
2004-08-16 00:31
2004.10.24
Вопрос про ServerSocket





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский