Stefan Dösinger wrote:
Am Donnerstag, 18. Mai 2006 22:31 schrieb Stefan Dösinger:

+
+    ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL, CDS_FULLSCREEN, NULL);
+    if (ret != DISP_CHANGE_SUCCESSFUL) {
+        if(devmode.dmDisplayFrequency != 0) {
+            WARN("ChangeDisplaySettingsExW failed, trying without the refresh 
rate\n");
+            devmode.dmFields &= ~DM_DISPLAYFREQUENCY;
+            devmode.dmDisplayFrequency = 0;
+            ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL, 
CDS_FULLSCREEN, NULL) != DISP_CHANGE_SUCCESSFUL;
+        }
+        if(ret != DISP_CHANGE_SUCCESSFUL) {
+            return DDERR_INVALIDMODE;
+        }
+    }

I'm not sure, but I think this line:

ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL, CDS_FULLSCREEN, NULL) != DISP_CHANGE_SUCCESSFUL;

should be

ret = ChangeDisplaySettingsExW(NULL, &devmode, NULL, CDS_FULLSCREEN, NULL);

as otherwise the test following it will always fire;

HTH,

Joris



Reply via email to