Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2004.01.16;
Скачать: CL | DM;

Вниз

Не могу разобраться с параметрами видеосистемы!!!   Найти похожие ветки 

 
Alex10   (2003-11-03 10:30) [0]

1.Как определить частоту экрана?

2.Возможно ли получить параметры (разрешение, частоту, глубину цвета) текущего видеорежима с помощью функции EnumDisplaySettings(nil, 0, DevMode)?

3.Как установить частоту экрана? Данный фрагмент не работает (т.е. выполняется без ошибок, но частота остается прежней):

ZeroMemory(@MonitorMode, SizeOf(TDevMode));
MonitorMode.dmSize := SizeOf(TDevMode);
MonitorMode.dmDisplayFrequency := 85;
MonitorMode.dmFields := DM_DISPLAYFREQUENCY;
ChangeDisplaySettings(MonitorMode, CDS_UPDATEREGISTRY);

P.S. В Windows XP срабатывает, не работает в Windows 98

4.Почему флаг CDS_GLOBAL не работает - меняются настройки только текущего пользователя:
ZeroMemory(@MonitorMode, SizeOf(TDevMode));
MonitorMode.dmSize := SizeOf(TDevMode);
MonitorMode.dmBitsPerPel := 16;
MonitorMode.dmPelsWidth := 1024;
MonitorMode.dmPelsHeight := 768;
MonitorMode.dmDisplayFrequency := 85;
MonitorMode.dmFields := DM_BITSPERPEL + DM_PELSWIDTH + DM_PELSHEIGHT + DM_DISPLAYFREQUENCY;
ChangeDisplaySettings(MonitorMode, CDS_GLOBAL + CDS_UPDATEREGISTRY);

Спасибо


 
Woolen ©   (2003-11-03 14:00) [1]

1:
A := GetDc(0);
Rate := GetDeviceCaps(A,VREFRESH);
ReleaseDC(A);
Только в NT


 
Woolen ©   (2003-11-03 14:35) [2]

2: Да.


 
Woolen ©   (2003-11-03 14:42) [3]

3: А драйвер, видеоустройство и монитор, которые в 98 установлены поддерживают такую частоту при таком разрешениии глубине цвета? Рекомендую выяснять сначала допустимость таких установок при помощи EnumDisplaySettings, потом проверять текущее разарешение и глубину цвета, а потом сверять - есть ли среди полученных допустимых режимов подходящий, чтобы текущее разаршение и цвет сочетались с желаемой желаемая частотой.


 
Woolen ©   (2003-11-03 14:54) [4]

3:
Забыл сказать. Неплохобы проверить результат работы функции, потому что по разным причинам возвращаются разные коды ошибки. Может это прольет свет на происходящую ошибку.


 
Alex10   (2003-11-04 12:17) [5]

Драйвера и устройства поддерживают те режимы - в ручную проставляются без проблем. В ХР тот же код работает корректно. Функция возращает значение 0 (т.е IDS_xxx_SUCCESLFULL)


 
Alex10   (2003-11-04 12:21) [6]

А КАК получить текущие настройки с помощью EnumDisplaySettings(nil, 0, DevMode)?



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

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

Наверх




Память: 0.48 MB
Время: 0.021 c
14-49738
barmaley2000
2003-12-23 22:57
2004.01.16
помогите с описанием функции


3-49436
Michail Dalakov
2003-12-18 15:42
2004.01.16
BDE и MSSQL


1-49575
Wadim
2004-01-05 17:57
2004.01.16
TListBox


1-49536
SergP
2004-01-02 15:37
2004.01.16
Как отобразить страничку из переменной на рабочем столе?


1-49562
hlomzik
2004-01-06 03:40
2004.01.16
Синхронизация скроллинга двух контролов