IddCxAdapterDisplayConfigUpdate2-Funktion (iddcx.h)

Ein Remotetreiber kann IddCxAdapterDisplayConfigUpdate2 aufrufen, damit ein Client dem Server mitteilen kann, wie die Monitorkonfiguration aktualisiert wird.

Syntax

HRESULT IddCxAdapterDisplayConfigUpdate2(
  IDDCX_ADAPTER                              AdapterObject,
  const IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 *pInArgs
);

Parameter

AdapterObject

[in] Das IDDCX_ADAPTER Objekt des Remoteadapters, für den die Anzeigekonfiguration angegeben ist.

pInArgs

[in] Zeiger auf eine IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2 Struktur, die Eingabeargumente für die Funktion enthält.

Rückgabewert

IddCxAdapterDisplayConfigUpdate2 gibt bei Erfolg STATUS_SUCCESS zurück. Andernfalls wird ein entsprechender Fehlercode zurückgegeben.

Hinweise

Ein indirekter Remoteanzeigetreiber kann IddCxAdapterDisplayConfigUpdate2 aufrufen, um den Modus, die Farbmetrik und andere Werte festzulegen, die das Betriebssystem für einen bestimmten Monitor verwenden sollte. Nur Remotetreiber können diese Funktion aufrufen.

Weitere Informationen zur HDR-Unterstützung finden Sie unter Updates für IddCx Version 1.10.

Die IDDCX_DISPLAYCONFIGPATH2 Struktur ist so definiert, dass nicht alle Informationen bei jedem Aufruf bereitgestellt werden müssen. Beispielsweise können einige Pfade keine Farbmetrikdaten bereitstellen, wenn der Farbmodus nicht HDR oder WCG ist, oder IddCxAdapterDisplayConfigUpdate2 kann aufgerufen werden, um die SDR-Weißebene nur zu aktualisieren, wenn keine Layoutänderungen erforderlich sind.

Die Steuerungsmodi (Festlegen des IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID-Flags für einen Pfad) umfasst einige zusätzliche Regeln und Klarstellungen:

  • Wenn ein Pfad IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID festgelegt ist, muss er für alle bereitgestellten Pfade festgelegt sein.
  • Wenn IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID für alle Pfade bereitgestellt wird, werden alle derzeit aktiven Pfade, die nicht in der Pfadliste enthalten sind, inaktiv.
  • Wenn nur nicht IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Flags festgelegt sind, müssen nur die zu aktualisierenden Pfade vorhanden sein.
  • Abhängig vom angegebenen Farbmodus sind möglicherweise zusätzliche Daten für einen Pfad erforderlich. In der folgenden Tabelle ist angegeben, welche zusätzlichen Flags festgelegt werden müssen:
Farbmodus IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID
SDR No No
SDRWCG Ja Nein
HDR Yes Yes

Erster im Vergleich zu nachfolgenden Aufrufen von IddCxAdapterDisplayConfigUpdate2

Wenn ein Pfad zum ersten Mal in einen IddCxAdapterDisplayConfigUpdate2-Aufruf aufgenommen wird, gelten andere Anforderungen als die nachfolgenden Zeiten. In der folgenden Tabelle werden die Anforderungen beschrieben.

Pfadfeld Erforderlich beim anfänglichen Aufruf für pfad Kann nach dem ersten Aufruf aktualisiert werden Wie würde der Windows-Client die Informationen erhalten?
Mode Yes Yes QueryDisplayConfig stellt die Clientanzeigekonfiguration bereit, und WM_DISPLAYCHANGE wird gesendet, wenn sich die Anzeigekonfiguration ändert. AdvancedColorInfo.CurrentAdvancedColorKind gibt einen Farbmodus
Skalierungsfaktor Yes Yes Treiber können die methode verwenden, die für IddCxAdapterDisplayConfigUpdate verwendet wird.
Physische Größe Ja, wenn keine EDID bestanden wurde No Nicht erforderlich, wenn EDID bestanden wurde
Farbmetrik Ja für den Nicht-SDR-Farbmodus Yes Die meisten Felder aus entsprechenden AdvancedColorInfo-Feldern
SDR-Weißebene Ja für den HDR-Farbmodus, standardwert: 80 nits Yes AdvancedColorInfo.SdrWhiteLevelInNits, weitere Informationen finden Sie unter DirectX mit erweiterter Farbe auf HDR/SDR-Displays .

Verhaltensunterschiede bei der Ausführung unter Windows 11, Version 22H2 September Update

Aufgrund der zugrunde liegenden Betriebssystemfunktionalität unterscheidet sich die Unterstützung für Treiber, die HDR- und WCG-Farbmodi anfordern, wenn sie unter Windows 11, Version 22H2 September Update, geringfügig von der Version 22H2 im September 2024 ausgeführt werden. Ein Treiber kann die IddCxGetVersion-Funktion verwenden, um zu bestimmen, unter welchem Betriebssystem er ausgeführt wird. In der folgenden Tabelle wird beschrieben, welche Farbmodi ein Treiber abhängig vom zuvor für das Betriebssystem bereitgestellten Monitordeskriptor anfordern kann:

Edid-Typ 22H2 September Update mögliche Farbmodi Plattformrelease in 2024 möglichen Farbmodi
Keine SDR, HDR SDR, SDRWCG, HDR
SDR SDR, SDRWCG SDR, SDRWCG
HDR SDR, HDR SDR, SDRWCG, HDR

Beispiele

Es folgen einige Beispiele dafür, welche Pfade in nachfolgende IddCxAdapterDisplayConfigUpdate2-Aufrufe eingeschlossen werden sollen. Zu Beginn jedes Szenarios werden für eine Remotesitzung die folgenden Pfade konfiguriert:

Monitor Lösung Desktopposition Farbmodus
1 1920 x 1080 bei 30 Hz 0,0 SDR
2 1024x768 bei 30 Hz 1024,0 SDRWCG
3 3840x2160 @ 30Hz 0,1848 HDR

Szenario 1: Ändern der Desktopposition von Monitor 3 auf links von Monitor 1

Monitor Flags Details
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Ändern Der Desktopposition in -3840,0

Szenario 2: Ändern von Monitor 2 von SDRWCG zu SDR

Monitor Flags Details
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Festlegen eines neuen Farbmodus
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten

Szenario 3: Ändern von Monitor 1 von SDR zu HDR

Monitor Flags Details
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_COLORIMETRY_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SDRWHITELEVEL_VALID Festlegen des neuen Farbmodus, der Farbmetrik und des SDR-Weißpegels
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten

Szenario 4: Ändern des Skalierungsfaktors von Monitor 2

Monitor Flags Details
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID Festlegen eines neuen Skalierungsfaktors

Szenario 5: Ändern des Skalierungsfaktors von Monitor 2 und der Desktopposition von Monitor 3, um von Monitor 1 zu bleiben

Monitor Flags Details
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
2 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID, IDDCX_DISPLAYCONFIGPATH2_FLAGS_MONITOR_SCALE_FACTOR_VALID Keine Änderung der aktuellen Modusdaten, Festlegen eines neuen Skalierungsfaktors
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Ändern Der Desktopposition in -3840,0

Szenario 6: Entfernen von Monitor 2 aus der aktuellen Konfiguration

Monitor Flags Details
1 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten
3 IDDCX_DISPLAYCONFIGPATH2_FLAGS_MODE_VALID Keine Änderung an aktuellen Modusdaten

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 11, Version 22H2 September Update (IddCx Version 1.10)
Kopfzeile iddcx.h

Weitere Informationen

IDARG_IN_ADAPTERDISPLAYCONFIGUPDATE2