Вниз
Скачать: 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.02 c
1-49486
Vl_
2004-01-03 20:34
2004.01.16
МАТРИЦЫ


1-49518
Хомячок
2003-12-30 11:04
2004.01.16
Вырубаем строку(по-хорошему)...


3-49445
Гоша
2003-12-18 10:24
2004.01.16
не могу из Win2K работать с базами расположенными на сервере


1-49566
Denis
2004-01-06 14:40
2004.01.16
Как установить цвет RadioGroup.Caption отличным от Items


1-49635
Ilg
2004-01-01 16:29
2004.01.16
Заголовок компонента




   Наверх