Rückgabewerte für DirectDraw

Die folgenden Tabellen enthalten Werte, die von den vom DirectDraw-Treiber bereitgestellten Funktionen zurückgegeben werden können. Die DDHAL_DRIVER_Xxx-Werte werden tatsächlich im DWORD-Rückgabewert zurückgegeben. Der DD_OK-Wert und DDERR_Xxx-Fehlercodes werden im ddRVal-Element der Struktur zurückgegeben, auf die der Parameter der bestimmten Funktion verweist.

Spezifische Fehlercodes, die jede Funktion zurückgeben kann, finden Sie in den Funktionsbeschreibungen im Abschnitt Referenz. Eine vollständige Auflistung von Fehlercodes und Rückgabewerten finden Sie unter DirectDraw-Headerdateien ddraw.h und dxmini.h . Beachten Sie, dass Fehlercodes durch negative Werte dargestellt werden und nicht kombiniert werden können.

Eine Funktion in einem DirectDraw-Treiber muss einen der beiden Rückgabecodes zurückgeben: DDHAL_DRIVER_HANDLED oder DDHAL_DRIVER_NOTHANDLED. Wenn der Treiber DDHAL_DRIVER_HANDLED zurückgibt, muss er auch entweder DD_OK oder einen der in ddraw.h aufgeführten Fehlercodes zurückgeben. Eine Funktion in einem DirectDraw-Treiber kann die Codes in der folgenden Tabelle zurückgeben. Diese Codes werden in ddraw.h definiert.

Rückgabecode Bedeutung
DD_OK Die Anforderung wurde erfolgreich abgeschlossen.
DDHAL_DRIVER_HANDLED Der Treiber hat den Vorgang ausgeführt und einen gültigen Rückgabecode für diesen Vorgang im ddrval-Member der Struktur zurückgegeben, der an den Rückruf des Treibers übergeben wurde. Wenn dieser Code DD_OK ist, fährt DirectDraw oder Direct3D mit der Funktion fort. Andernfalls gibt DirectDraw oder Direct3D den vom Treiber bereitgestellten Fehlercode zurück und bricht die Funktion ab.
DDHAL_DRIVER_NOCKEYHW Der Anzeigetreiber konnte den Aufruf nicht verarbeiten, da die Hardwareressourcen für Farbschlüssel ausgingen.
DDHAL_DRIVER_NOTHANDLED Der Treiber hat keinen Kommentar zum angeforderten Vorgang. Wenn der Treiber einen bestimmten Rückruf implementiert haben muss, meldet DirectDraw oder Direct3D eine Fehlerbedingung. Andernfalls verarbeitet DirectDraw oder Direct3D den Vorgang so, als wäre der Treiberrückruf nicht durch Ausführen der geräteunabhängigen DirectDraw- oder Direct3D-Implementierung definiert worden. DirectDraw und Direct3D ignorieren in der Regel jeden Wert, der im ddrval-Member der Parameterstruktur dieses Rückrufs zurückgegeben wird.
DDERR_GENERIC Es gibt eine nicht definierte Fehlerbedingung.
DDERR_OUTOFCAPS Die für den angeforderten Vorgang erforderliche Hardware wurde bereits zugewiesen.
DDERR_UNSUPPORTED Der Vorgang wird nicht unterstützt.

Eine DxApi-Funktion , die in einem Video-Miniporttreiber implementiert ist, gibt einen der Codes in der folgenden Tabelle zurück. Diese Codes sind in dxmini.h definiert.

Rückgabecode Bedeutung
DX_OK Die Anforderung wurde erfolgreich abgeschlossen.
DXERR_GENERIC Es gibt eine nicht definierte Fehlerbedingung.
DXERR_OUTOFCAPS Die für den angeforderten Vorgang erforderliche Hardware wurde bereits zugewiesen.
DXERR_UNSUPPORTED Der Vorgang wird nicht unterstützt.