Moin!
Is ja nicht das Ding...
Delphi-Quellcode:
function change_resolution(Const AWidth, AHeight, ABpp : Word): boolean;
var
lpDevMode: TDeviceMode;
begin
lpDevMode.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT or DM_BITSPERPEL;
lpDevMode.dmPelsWidth := AWidth;
lpDevMode.dmPelsHeight := AHeight;
lpDevMode.dmBitsPerPel := ABpp;
Result := ( ChangeDisplaySettings(lpDevMode, CDS_UPDATEREGISTRY) = DISP_CHANGE_SUCCESSFUL );
end;
Und hier nochmal eine Deluxe Version, die die Bildwiederholfrequenz mitsetzt, aber nur, wenn du sie auch angibst, ansonsten ändert er nix an der Wiederholfrequenz (besser gesgt, er nimmt dann die Default).
Delphi-Quellcode:
Function change_resolution(Const AWidth, AHeight, ABpp : Word; Const ARefreshRate : Word = 0): Boolean;
Var
lpDevMode: TDeviceMode;
Begin
lpDevMode.dmFields := DM_PELSWIDTH or DM_PELSHEIGHT or DM_BITSPERPEL;
lpDevMode.dmPelsWidth := AWidth;
lpDevMode.dmPelsHeight := AHeight;
lpDevMode.dmBitsPerPel := ABpp;
If ( ARefreshRate > 0 ) Then
Begin
lpDevMode.dmDisplayFrequency := ARefreshRate;
lpDevMode.dmFields := lpDevMode.dmFields Or DM_DISPLAYFREQUENCY;
End;
Result := ( ChangeDisplaySettings(lpDevMode, CDS_UPDATEREGISTRY) = DISP_CHANGE_SUCCESSFUL );
End;
MfG
Muetze1