Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Определение видеопамяти [Win95/98, WinME, NT4, Win2k, WinXP]


AllOver2003 ©   (2003-02-19 14:32:00) 

Подскажите пожалуйста, как определить размер видеопамяти. Спасибо.


AllOver2003   (2003-02-23 11:05:00) [1]

Хм... на сайте майкрософт было написано что WMI для Windows 98 Gold и SE/ME/НТ 4/2000/XP.


Garrett   (2003-02-23 05:32:00) [2]

интересно:
"установить систему Windows 2000 или NT 4.0 SP4 и выше;
установить Microsoft Internet Explorer (IE) 5.0 и выше;"

а Win9x побоку? :-) тогда этот метод неуниверсален, что есть нехорошо.

Размер видеопамяти можно узнать через DirectDraw (кстати, именно так, я думаю, берёт информацию dxdiag). но, к сожалению, взять инфу о памяти можно только начиная с версии DirectX5 (она входит в комплект WINNT4.0 по умолчнию). Но DirectX5 в стандартной установке не входит в Win95 и WinNT3.1. Так что этот метод тоже неуниверсален :-)
С другой стороны я думаю, что гораздо вероятнее то, что у пользователя стоит современный DirectX, чем то, что у него стоит одна из WinNT.


AllOver2003   (2003-02-22 12:06:00) [3]

Ух ты, все понял. Спасибо.
http://www.delphikingdom.com/mastering/wmi.htm


AllOver2003   (2003-02-21 18:52:00) [4]

А что это значит?


AGGRESSOR   (2003-02-21 17:42:00) [5]

2 Игорь Шевченко © (20.02.03 17:07):
Вот, так бы сразу. Хотя я как раз вчера это сам раскопал, но все равно спасибо.


AllOver2003   (2003-02-20 20:49:00) [6]

Очень хотелось бы посмотреть


Игорь Шевченко   (2003-02-20 17:07:00) [7]

WMI


AGGRESSOR   (2003-02-20 15:13:00) [8]

Я тут нашел кой-чего о том, как инфу из БИОСа вытягивать. В ближайшее время разберусь, и тогда поделюсь, до чего докопался.


AllOver2003   (2003-02-19 19:23:00) [9]

О еще...
особенно расшифруйте параметры HardwareInformation.ChipType и HardwareInformation.BiosString.
Вот только размера видео памяти я не ншел :((((((


AllOver2003   (2003-02-19 19:19:00) [10]

В доказательство привожу... просмотрел логи обращения утилиты ДхДиаг к реестру и нашел ключик HKEY_LOCAL_MACHINE\HARDWARE\DEVICEMAP\VIDEO, параметр VgaCompatible, который равен \Device\Video1, в свое время параметр \Device\Video0 равен \REGISTRY\Machine\System\ControlSet001\Services\nv\Device0...
Следуем по ключику HKEY_LOCAL_MACHINE\SYSTEM\ControlSet001\Services\nv....и видим...ух много видим..:
1) путь к драйверу
2) название
3) список режимов
4) характеристика..
в общем более 30 параметров точно, только винда их сама неверно определяет для некоторых видух.


AllOver2003   (2003-02-19 19:13:00) [11]

У вас какая версия ДХ? У меня 9 и он пишет размер видеопамяти 4.0 Мб. А то что там видеобиос пишет при загрузке..это особого отношения не имеет. На самом деле винда сама тянет инфу ну скажем при установке или оновлении аппаратуры, заносит её в реестр, а потом уже все все тянут все от туда, например нортон инфо, сандра, системщик и т.п..., даже информация о системе в 2000 и ХР...


AGGRESSOR   (2003-02-19 16:31:00) [12]

Размер видеопамяти она точно не из реестра тянет. Во-первых, т.к. там написано "приблизительно n Мб", и во-вторых, есть некоторые карточки, в которых размер видеопамяти можно увидеть только при загрузке системы (VideoBIOS) и в dxdiag. Следовательно, dxdiag считывает VideoBIOS либо каким-то образом (например, по диапазону адресов) примерно считает размер видеопамяти.


AllOver2003   (2003-02-19 15:27:00) [13]

99% прог тянет инфу из реестра. Но дело в том, что и винда иногда не правильно определяет размер видеопамяти!
Например запустите монитор реестра и потом DxDiag... меня лг файл на 11 мегов получился :) Он всю инфу тянет из реестра.


AGGRESSOR   (2003-02-19 14:36:00) [14]

Можешь не стараться- я такой вопрос неделю назад задал, так мне до сих пор ни одного ответа. Я сейчас пытаюсь узнать, как это делает утилитка dxdiag, и использовать это.


Наверх

Титульная страница Поиск, карта сайта Написать письмо