Hallo,
ich habe, wie in den einschlägigen Tutorials beschrieben, versucht nicht nur die AUflösung des ersten sondern auch des 2. (ein und dieselbe Grafikkarte, GeForce2 GO) zu ändern. (Meine Anwendung soll Vollbild auf beiden Bildschirmen laufen)
Ich hole mir die Infos per
EnumDisplaySettings('\\.\Display2',0,DevMode);
änderen dann den Record DevMode und versuche dann die Änderung mit
ChangeDisplaySettings(DevMode, 0);
zu bewerkstelligen. Fehlanzeige: die AUflösung des Primärbildschirms ändert sich und auf dem 2. ändert sich nur die Größe des Hintergrundbildes....
Bin hier echt am austicken
und für jede Hilfe dankbar...
Mat
Der "komplette" Code sieht so aus:
Delphi-Quellcode:
class function TMonitor.ChangeResolution(XResolution, YResolution, Depth: DWORD; _MonitorIndex:ShortInt): BOOL;
var
DevMode : TDeviceMode;
begin
Result := False;
EnumDisplaySettings(PChar('\\.\Display'+IntToStr(_MonitorIndex)),0,DevMode);
DevMode.dmFields:=DM_PELSWIDTH or DM_PELSHEIGHT;
DevMode.dmPelsWidth:=XResolution;
DevMode.dmPelsHeight:=YResolution;
DevMode.dmColor := Depth;
{ Hier vielleicht noch die Wiederholfrequenz festlegen }
Result:= (ChangeDisplaySettings(DevMode, 0) = DISP_CHANGE_SUCCESSFUL);
end;