Wir arbeiten grad an einem MFC Projekt unter VS2005 für Windows Vista.
Wir wollen nun via der API Funktion ChangeDisplaySettings(...) die Display Auflösung des Systems verändern.
Nur leider funktioniert das unter Vista nicht.
Wir bekommen dort nur den Returnvalue BadMode von dieser Funktion.
Unter XP greift die Funktion mit den selben Einstellungen sofort.
Was den Display Mode betrifft verwendet wir genau die Werte die wir als gültige Einstellungen vorher abgefragt haben (EnumDisplayDevices).
Auch Versuche mit ChangeDisplaySettingsEx haben Nichts gebracht.
Wir haben den Code bereits auf 2 verschiedenen Vista Rechnern (unterschiedliche Grafik Adapter) untersucht.
Leider mit dem selben Ergebnis.
Anfangs dachten wir, dass es vielleicht das Vista UAC sein könnte - das ist aber bereits abgedreht.
Beispielcode:
DevMode.dmPelsWidth = 800;
DevMode.dmPelsHeight = 600;
DevMode.dmFields=DM_PELSWIDTH|DM_PELSHEIGHT;
::ChangeDisplaySettings(&DevMode, CDS_GLOBAL | CDS_UPDATEREGISTRY);
Hat wer von Euch eine Idee woran es liegen könnte?
Oder hat vielleicht einer Idee wie man die Auflösung auf anderem Weg ändern könnte?
Wir wollen nun via der API Funktion ChangeDisplaySettings(...) die Display Auflösung des Systems verändern.
Nur leider funktioniert das unter Vista nicht.
Wir bekommen dort nur den Returnvalue BadMode von dieser Funktion.
Unter XP greift die Funktion mit den selben Einstellungen sofort.
Was den Display Mode betrifft verwendet wir genau die Werte die wir als gültige Einstellungen vorher abgefragt haben (EnumDisplayDevices).
Auch Versuche mit ChangeDisplaySettingsEx haben Nichts gebracht.
Wir haben den Code bereits auf 2 verschiedenen Vista Rechnern (unterschiedliche Grafik Adapter) untersucht.
Leider mit dem selben Ergebnis.
Anfangs dachten wir, dass es vielleicht das Vista UAC sein könnte - das ist aber bereits abgedreht.
Beispielcode:
DevMode.dmPelsWidth = 800;
DevMode.dmPelsHeight = 600;
DevMode.dmFields=DM_PELSWIDTH|DM_PELSHEIGHT;
::ChangeDisplaySettings(&DevMode, CDS_GLOBAL | CDS_UPDATEREGISTRY);
Hat wer von Euch eine Idee woran es liegen könnte?
Oder hat vielleicht einer Idee wie man die Auflösung auf anderem Weg ändern könnte?
Comment