VirtualBox

Ignore:
Timestamp:
Aug 16, 2010 10:59:01 AM (15 years ago)
Author:
vboxsync
svn:sync-xref-src-repo-rev:
64830
Message:

wddm: multimonitor support

Location:
trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm
Files:
2 added
1 edited

Legend:

Unmodified
Added
Removed
  • trunk/src/VBox/Additions/WINNT/Graphics/Display/wddm/VBoxDispD3D.cpp

    r30986 r31687  
    2323#include "VBoxDispD3DCmn.h"
    2424#include "VBoxDispD3D.h"
     25#include "VBoxScreen.h"
    2526
    2627#ifdef VBOXDISPMP_TEST
     
    3435
    3536#define VBOXWDDMDISP_WITH_TMPWORKAROUND 1
     37
     38static VBOXSCREENMONRUNNER g_VBoxScreenMonRunner;
    3639
    3740//#define VBOXWDDMOVERLAY_TEST
     
    13441347                    LPVOID    lpReserved)
    13451348{
    1346     BOOL bOk = TRUE;
    1347 
    13481349    switch (dwReason)
    13491350    {
    13501351        case DLL_PROCESS_ATTACH:
    13511352        {
     1353            vboxVDbgPrint(("VBoxDispD3D: DLL loaded.\n"));
    13521354#ifdef VBOXWDDMDISP_DEBUG
    13531355            vboxVDbgVEHandlerRegister();
     
    13571359            HRESULT hr = vboxDispCmInit();
    13581360            Assert(hr == S_OK);
     1361            if (hr == S_OK)
     1362            {
    13591363#ifdef VBOXDISPMP_TEST
    1360             if (hr == S_OK)
    1361             {
    13621364                hr = vboxDispMpTstStart();
    13631365                Assert(hr == S_OK);
    1364             }
     1366                if (hr == S_OK)
    13651367#endif
    1366             if (hr == S_OK)
    1367                 vboxVDbgPrint(("VBoxDispD3D: DLL loaded.\n"));
    1368             else
    1369                 bOk = FALSE;
    1370 
     1368                {
     1369                    hr = VBoxScreenMRunnerStart(&g_VBoxScreenMonRunner);
     1370                    Assert(hr == S_OK);
     1371                    /* succeed in any way */
     1372                    hr = S_OK;
     1373                    if (hr == S_OK)
     1374                    {
     1375                        vboxVDbgPrint(("VBoxDispD3D: DLL loaded OK\n"));
     1376                        return TRUE;
     1377                    }
     1378#ifdef VBOXDISPMP_TEST
     1379                    vboxDispMpTstStop();
     1380#endif
     1381                }
     1382                vboxDispCmTerm();
     1383            }
    13711384//                VbglR3Init();
    13721385            break;
     
    13781391            vboxVDbgVEHandlerUnregister();
    13791392#endif
    1380             HRESULT hr;
    1381 #ifdef VBOXDISPMP_TEST
    1382             hr = vboxDispMpTstStop();
     1393            HRESULT hr = VBoxScreenMRunnerStop(&g_VBoxScreenMonRunner);
    13831394            Assert(hr == S_OK);
    13841395            if (hr == S_OK)
    1385 #endif
    1386             {
    1387                 hr = vboxDispCmTerm();
     1396            {
     1397#ifdef VBOXDISPMP_TEST
     1398                hr = vboxDispMpTstStop();
    13881399                Assert(hr == S_OK);
    13891400                if (hr == S_OK)
    1390                     vboxVDbgPrint(("VBoxDispD3D: DLL unloaded.\n"));
    1391                 else
    1392                     bOk = FALSE;
     1401#endif
     1402                {
     1403                    hr = vboxDispCmTerm();
     1404                    Assert(hr == S_OK);
     1405                    if (hr == S_OK)
     1406                    {
     1407                        vboxVDbgPrint(("VBoxDispD3D: DLL unloaded.\n"));
     1408                        return TRUE;
     1409                    }
     1410                }
    13931411            }
    13941412//                VbglR3Term();
     
    13981416
    13991417        default:
    1400             break;
    1401     }
    1402     return bOk;
     1418            return TRUE;
     1419    }
     1420    return FALSE;
    14031421}
    14041422
Note: See TracChangeset for help on using the changeset viewer.

© 2024 Oracle Support Privacy / Do Not Sell My Info Terms of Use Trademark Policy Automated Access Etiquette