Moin Mütze,
JA,
Delphi-Quellcode:
Result := EnumDisplaySettingsExA( PChar('\\.\Display'+IntToStr(Index)), ENUM_CURRENT_SETTINGS, DevModeExA, 0);
if Not Result then
Result := EnumDisplaySettingsExA( PChar('\\.\Display'+IntToStr(Index)), ENUM_REGISTRY_SETTINGS, DevModeExA, 0);
if Result then
...
DevModeExA.dmFields := DM_POSITION;
Ich hole mir die Daten wenn der Monitor nicht aktiv ist aus der Registry.
dmField ist auch gesetzt.
Das Ändern mit ChangeDisplaySettingsEx oder ChangeDisplaySettingsExA geht.
Aber das deaktivieren mit dmPelsWidth und dmPelsHeight auf 0 geht nicht.
Ich kann von 800x600 auf 1024x768 umschalten aber nicht auf 0x0,
was zu einem deaktivieren des Monitors führen soll, lt.
MSDN.
Gruss Rumpi