Changeset 48979 in vbox for trunk/src/VBox/Additions/WINNT
- Timestamp:
- Oct 8, 2013 3:42:15 PM (11 years ago)
- svn:sync-xref-src-repo-rev:
- 89694
- Location:
- trunk/src/VBox/Additions/WINNT/VBoxTray
- Files:
-
- 2 edited
Legend:
- Unmodified
- Added
- Removed
-
trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDispIf.cpp
r48815 r48979 1345 1345 } 1346 1346 1347 static DWORD vboxDispIfWddmResizeDisplayVista(DEVMODE *paDeviceModes, DISPLAY_DEVICE *paDisplayDevices, DWORD cDevModes, UINT iChangedMode, BOOL fEnable, BOOL fExtDispSup) 1348 { 1349 /* Without this, Windows will not ask the miniport for its 1350 * mode table but uses an internal cache instead. 1351 */ 1352 for (DWORD i = 0; i < cDevModes; i++) 1353 { 1354 DEVMODE tempDevMode; 1355 ZeroMemory (&tempDevMode, sizeof (tempDevMode)); 1356 tempDevMode.dmSize = sizeof(DEVMODE); 1357 EnumDisplaySettings((LPSTR)paDisplayDevices[i].DeviceName, 0xffffff, &tempDevMode); 1358 Log(("VBoxTray: ResizeDisplayDevice: EnumDisplaySettings last error %d\n", GetLastError ())); 1359 } 1360 1361 DWORD winEr = EnableAndResizeDispDev(paDeviceModes, paDisplayDevices, cDevModes, iChangedMode, paDeviceModes[iChangedMode].dmPelsWidth, paDeviceModes[iChangedMode].dmPelsHeight, 1362 paDeviceModes[iChangedMode].dmBitsPerPel, paDeviceModes[iChangedMode].dmPosition.x, paDeviceModes[iChangedMode].dmPosition.y, fEnable, fExtDispSup); 1363 if (winEr != NO_ERROR) 1364 WARN(("VBoxTray: (WDDM) Failed EnableAndResizeDispDev winEr %d\n", winEr)); 1365 1366 return winEr; 1367 } 1368 1347 1369 static DWORD vboxDispIfResizePerform(PCVBOXDISPIF const pIf, UINT iChangedMode, BOOL fEnable, BOOL fExtDispSup, DISPLAY_DEVICE *paDisplayDevices, DEVMODE *paDeviceModes, UINT cDevModes) 1348 1370 { … … 1356 1378 else 1357 1379 { 1358 winEr = EnableAndResizeDispDev(paDeviceModes, paDisplayDevices, cDevModes, iChangedMode, paDeviceModes[iChangedMode].dmPelsWidth, paDeviceModes[iChangedMode].dmPelsHeight, 1359 paDeviceModes[iChangedMode].dmBitsPerPel, paDeviceModes[iChangedMode].dmPosition.x, paDeviceModes[iChangedMode].dmPosition.y, fEnable, fExtDispSup); 1380 winEr = vboxDispIfWddmResizeDisplayVista(paDeviceModes, paDisplayDevices, cDevModes, iChangedMode, fEnable, fExtDispSup); 1360 1381 if (winEr != NO_ERROR) 1361 WARN(("VBoxTray: (WDDM) Failed EnableAndResizeDispDevwinEr %d\n", winEr));1382 WARN(("VBoxTray: (WDDM) Failed vboxDispIfWddmResizeDisplayVista winEr %d\n", winEr)); 1362 1383 } 1363 1384 return winEr; … … 1822 1843 for (DWORD i = 0; i < cIds; ++i) 1823 1844 { 1824 winEr = EnableAndResizeDispDev(paNewDeviceModes, paNewDisplayDevices, NewDevNum, i, 0, 0, 0, 0, 0, FALSE, TRUE);1845 winEr = vboxDispIfWddmResizeDisplayVista(paNewDeviceModes, paNewDisplayDevices, NewDevNum, i, FALSE, TRUE); 1825 1846 if (winEr != NO_ERROR) 1826 WARN(("VBoxTray: vboxDispIfResizeStartedWDDMOp: EnableAndResizeDispDevfailed winEr 0x%x\n", winEr));1847 WARN(("VBoxTray: vboxDispIfResizeStartedWDDMOp: vboxDispIfWddmResizeDisplayVista failed winEr 0x%x\n", winEr)); 1827 1848 } 1828 1849 } -
trunk/src/VBox/Additions/WINNT/VBoxTray/VBoxDisplay.cpp
r48070 r48979 261 261 deviceMode.dmFields = DM_POSITION; 262 262 else /* for win 7 and above */ 263 /* for vista and abo ce DM_BITSPERPELis necessary */263 /* for vista and above DM_BITSPERPEL is necessary */ 264 264 deviceMode.dmFields = DM_BITSPERPEL | DM_DISPLAYFLAGS | DM_DISPLAYFREQUENCY | DM_POSITION; 265 265
Note:
See TracChangeset
for help on using the changeset viewer.