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 |
---|---|
|
Die Funktion wurde erfolgreich ausgeführt. |
|
Die angegebene Kombination von Parametern und Flags ist ungültig. |
|
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. |
|
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. |
|
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) |