Вниз
Скачать: 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 вся ветка

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



Память: 0.46 MB
Время: 0.014 c
1-49542
Magician
2004-01-02 11:03
2004.01.16
Как найти значек, с которым ассоциирован данный файл.


14-49701
Кен
2003-12-26 02:11
2004.01.16
Какую лучше выбрать вэб-камеру для тёмных помещений ? А то на


1-49551
mik_1
2004-01-01 22:29
2004.01.16
Application.ProcessMessages


7-49779
Boutenko_Ivan
2003-11-03 20:36
2004.01.16
запуск файлов из программы


3-49410
Mordsit
2003-12-19 11:34
2004.01.16
SQL-запрос




   Наверх