Freigeben über


GetPhysicalMonitorsFromHMONITOR-Funktion (physicalmonitorenumerationapi.h)

Ruft die physischen Monitore ab, die einem HMONITOR-Monitorhandle zugeordnet sind.

Syntax

_BOOL GetPhysicalMonitorsFromHMONITOR(
  [in]  HMONITOR           hMonitor,
  [in]  DWORD              dwPhysicalMonitorArraySize,
  [out] LPPHYSICAL_MONITOR pPhysicalMonitorArray
);

Parameter

[in] hMonitor

Ein Monitorhandle. Monitorhandles werden von mehreren Funktionen des Mehrfachanzeigemonitors zurückgegeben, einschließlich EnumDisplayMonitors und MonitorFromWindow, die Teil der Grafikgeräteschnittstelle (GDI) sind.

[in] dwPhysicalMonitorArraySize

Anzahl der Elemente in pPhysicalMonitorArray. Um die erforderliche Größe des Arrays abzurufen, rufen Sie GetNumberOfPhysicalMonitorsFromHMONITOR auf.

[out] pPhysicalMonitorArray

Zeiger auf ein Array von PHYSICAL_MONITOR Strukturen. Der Aufrufer muss das Array zuordnen.

Rückgabewert

Wenn die Funktion erfolgreich ist, ist der Rückgabewert TRUE. Wenn die Funktion fehlschlägt, ist der Rückgabewert FALSE. Um erweiterte Fehlerinformationen zu erhalten, rufen Sie GetLastError auf.

Hinweise

Ein einzelnes HMONITOR-Handle kann mehreren physischen Monitoren zugeordnet werden. Diese Funktion gibt einen Handle und eine Textbeschreibung für jeden physischen Monitor zurück.

Wenn Sie mit der Verwendung der Monitorhandles fertig sind, schließen Sie sie, indem Sie das pPhysicalMonitorArray-Array an die Funktion DestroyPhysicalMonitors übergeben.

Beispiele


HMONITOR hMonitor = NULL;
DWORD cPhysicalMonitors;
LPPHYSICAL_MONITOR pPhysicalMonitors = NULL;

// Get the monitor handle.
hMonitor = MonitorFromWindow(hWnd, MONITOR_DEFAULTTOPRIMARY);

// Get the number of physical monitors.
BOOL bSuccess = GetNumberOfPhysicalMonitorsFromHMONITOR(
  hMonitor, 
  &cPhysicalMonitors
   );

if (bSuccess)
{
    // Allocate the array of PHYSICAL_MONITOR structures.
    pPhysicalMonitors = (LPPHYSICAL_MONITOR)malloc(
        cPhysicalMonitors* sizeof(PHYSICAL_MONITOR));

    if (pPhysicalMonitors != NULL)
    {
        // Get the array.
        bSuccess = GetPhysicalMonitorsFromHMONITOR(
            hMonitor, cPhysicalMonitors, pPhysicalMonitors);

       // Use the monitor handles (not shown).

        // Close the monitor handles.
        bSuccess = DestroyPhysicalMonitors(
            cPhysicalMonitors, 
            pPhysicalMonitors);

        // Free the array.
        free(pPhysicalMonitors);
    }
}

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows Vista [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2008 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile physicalmonitorenumerationapi.h
Bibliothek Dxva2.lib
DLL Dxva2.dll

Weitere Informationen

Überwachen von Konfigurationsfunktionen