Share via


GetDisplayConfigBufferSizes-Funktion (winuser.h)

Die GetDisplayConfigBufferSizes-Funktion ruft die Größe der Puffer ab, die zum Aufrufen der QueryDisplayConfig-Funktion erforderlich sind.

Syntax

LONG GetDisplayConfigBufferSizes(
  [in]  UINT32 flags,
  [out] UINT32 *numPathArrayElements,
  [out] UINT32 *numModeInfoArrayElements
);

Parameter

[in] flags

Der Typ der abzurufenden Informationen. Der Wert für den Flags-Parameter muss einer der folgenden Werte sein.

QDC_ALL_PATHS

Der Aufrufer fordert die Tabellengrößen auf, um alle möglichen Pfadkombinationen zu enthalten.

QDC_ONLY_ACTIVE_PATHS

Der Aufrufer fordert die Tabellengrößen auf, nur aktive Pfade zu enthalten.

QDC_DATABASE_CURRENT

Der Aufrufer fordert die Tabellengrößen an, um die aktiven Pfade wie in der Persistenzdatenbank für die aktuell verbundenen Monitore zu speichern.

[out] numPathArrayElements

Zeiger auf eine Variable, die die Anzahl der Elemente in der Pfadinformationstabelle empfängt. Der pNumPathArrayElements-Parameterwert wird dann von einem nachfolgenden Aufruf der QueryDisplayConfig-Funktion verwendet. Dieser Parameter darf nicht NULL sein.

[out] numModeInfoArrayElements

Zeiger auf eine Variable, die die Anzahl der Elemente in der Modusinformationstabelle empfängt. Der pNumModeInfoArrayElements-Parameterwert wird dann von einem nachfolgenden Aufruf der QueryDisplayConfig-Funktion verwendet. Dieser Parameter darf nicht NULL sein.

Rückgabewert

Die Funktion gibt einen der folgenden Rückgabecodes zurück.

Rückgabecode Beschreibung
ERROR_SUCCESS
Die Funktion wurde erfolgreich ausgeführt.
ERROR_INVALID_PARAMETER
Die angegebene Kombination von Parametern und Flags ist ungültig.
ERROR_NOT_SUPPORTED
Das System führt keinen Grafiktreiber aus, der gemäß dem Windows Display Driver Model (WDDM) geschrieben wurde. Die Funktion wird nur auf einem System unterstützt, auf dem ein WDDM-Treiber ausgeführt wird.
ERROR_ACCESS_DENIED
Der Aufrufer hat keinen Zugriff auf die Konsolensitzung. Dieser Fehler tritt auf, wenn der aufrufende Prozess keinen Zugriff auf den aktuellen Desktop hat oder in einer Remotesitzung ausgeführt wird.
ERROR_GEN_FAILURE
Es ist ein unbekannter Fehler aufgetreten.

Hinweise

Angesichts der aktuellen Anzeigepfadkonfiguration und der angeforderten Flags gibt GetDisplayConfigBufferSizes die Größe der Pfad- und Modustabellen zurück, die zum Speichern der Informationen erforderlich sind. GetDisplayConfigBufferSizes kann Werte zurückgeben, die etwas größer als tatsächlich erforderlich sind, da dadurch bestimmt wird, dass alle Quell- und Zielpfade gültig sind. der Fahrer kann jedoch einige Einschränkungen für die möglichen Kombinationen festlegen.

Da GetDisplayConfigBufferSizes nur die erforderliche Arraygröße dieses Zeitpunkts bestimmen kann, ist es möglich, dass zwischen Aufrufen von GetDisplayConfigBufferSizes und QueryDisplayConfig die Systemkonfiguration geändert wurde und die bereitgestellten Arraygrößen nicht mehr ausreichen, um die neuen Pfaddaten zu speichern.

Wenn ein Aufrufer weiß, dass er zusätzliche Quellen und Ziele aktivieren muss, kann der Aufrufer ein größeres Modusinformationsarray zuordnen, als von GetDisplayConfigBufferSizes zurückgegeben wird, sodass er über den Speicherplatz zum Hinzufügen der zusätzlichen Quell- und Zielmodi nach dem Aufrufen von QueryDisplayConfig und vor dem Aufruf von SetDisplayConfig verfügt.

Beispiele

Ein Beispiel für GetDisplayConfigBufferSizes finden Sie unter QueryDisplayDisplayConfigConfig.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Verfügbar in Windows Vista und höheren Versionen der Windows-Betriebssysteme.
Zielplattform Universell
Header winuser.h (einschließlich Windows.h)
Bibliothek User32.lib; OneCoreUAP.lib auf Windows 10
DLL User32.dll
APIs ext-ms-win-ntuser-sysparams-ext-l1-1-1 (eingeführt in Windows 10, Version 10.0.14393)

Weitere Informationen

QueryDisplayConfig

SetDisplayConfig