XPDM im Vergleich zu WDDM

Die Direct3D 9-API funktioniert je nach installiertem Betriebssystem entweder mit dem Windows XP-Anzeigetreibermodell (XPDM) oder dem Windows Vista-Anzeigetreibermodell (WDDM). Es gibt einige Unterschiede im Verhalten der Direct3D-API für die beiden Treibermodelle.

Sicherer Desktop

Der sichere Desktop ist immer dann aktiv, wenn eine der folgenden Aktionen auftritt: Der Benutzer sperrt seinen Desktop (Windows+L), der Bildschirmschoner wird aktiviert (wenn kein Benutzer angemeldet ist), oder standardmäßig, wenn die Benutzerkontensteuerung eine Eingabeaufforderung zeigt. Wenn der sichere Desktop aktiv ist, kann nicht auf das HAL-Gerät zugegriffen werden.

Unterschiede zwischen XPDM und WDDM:

  • Der Versuch, ein Direct3D9 HAL-Gerät zu erstellen, schlägt fehl (mit D3DERR_NOT_AVAILABLE), und jedes vorhandene Direct3D 9-Gerät weist auf einen verlorenen Geräterückgabecode in Present hin.

  • Direct3D9Ex- und Direct3D 10-APIs können ein Gerät erfolgreich erstellen, während der sichere Desktop aktiv ist, und alle Aufrufe von Present (IDirect3D9Ex oder DXGI) geben einen status-Code zurück, der angibt, dass der Desktop derzeit nicht verfügbar ist.

 

Remotedesktop

Wenn ein Remotedesktop aktiv ist, wird die Anzeige vom Anzeigecomputer verarbeitet, wobei der Hostcomputer Informationen über das Netzwerk sendet.

Unterschiede zwischen XPDM und WDDM:

  • Unter XPDM schlagen alle Versuche, ein Direct3D 9-Gerät auf einem Remotedesktop zu erstellen, fehl.

  • In WDDM unterstützt Remotedesktop das Erstellen eines HAL-Geräts über eine Remotedesktopsitzung.

 

Windows-Dienst

Ein Windows-Dienst ist ein Prozess, der im Hintergrund ausgeführt wird und vom Dienststeuerungs-Manager (SCM) gesteuert wird. Ein Dienst wird unabhängig vom aktiven Desktop ausgeführt und hat daher nur eingeschränkte Möglichkeiten, mit Benutzern zu interagieren.

Unterschiede zwischen XPDM und WDDM:

  • In WDDM stellt die Sitzungsisolation 0 sicher, dass ein Dienst als Sicherheitsmaßnahme keinen Zugriff auf einen Benutzerdesktop hat. Daher ist ein Direct3D 9 HAL-Gerät nie über einen Windows-Dienst verfügbar.

 

Hinweis

Sie können Direct3D 9 nicht in einem Windows-Dienst verwenden. Weitere Informationen finden Sie im Microsoft-Supportartikel 978635.

 

In der folgenden Tabelle sind die hier aufgeführten Unterschiede zusammengefasst.

Sicherer Desktop XPDM WDDM (Direct3D9) WDDM(Direct3D9Ex/Direct3D10)
NULLREF Ja Ja Ja
HAL Nein Nein Ja
REF Ja Ja Ja
Remotedesktop
NULLREF Nein Ja Ja
HAL Nein Ja Ja
REF Ja Ja Ja
Windows-Dienst
NULLREF Nein Nein Nein
HAL Nein Nein Nein
REF Nein Nein Nein
WARP10 Ja

 

Weitere Informationen zu XPDM, WDDM, Direct3D9Ex und Direct3D 10 finden Sie unter Grafik-APIs in Windows.

Direct3D-Geräte