D3DKMTSubmitCommand-Funktion (d3dkmthk.h)

D3DKMTSubmitCommand wird verwendet, um Befehlspuffer für Kontexte zu übermitteln, die virtuelle GPU-Adressierung (Graphics Processing Unit) unterstützen. Diese Kontexte generieren Befehle direkt aus dem Benutzermodus, verwalten ihren eigenen Befehlspufferpool und verwenden nicht die Zuordnungs- oder Patchspeicherortliste.

Syntax

NTSTATUS D3DKMTSubmitCommand(
  [in] const D3DKMT_SUBMITCOMMAND *unnamedParam1
);

Parameter

[in] unnamedParam1

Ein Zeiger auf eine D3DKMT_SUBMITCOMMAND Struktur, die den Vorgang beschreibt.

Rückgabewert

Rückgabecode Beschreibung
STATUS_SUCCESS Der Gerätekontext wurde erfolgreich erstellt.
STATUS_INVALID_PARAMETER Die Parameter wurden überprüft und als falsch ermittelt.

Diese Funktion gibt möglicherweise auch andere NTSTATUS-Werte zurück.

Hinweise

Diese Funktion ersetzt die alte Render-Funktion für solche Kontexte und muss an ihrer Stelle verwendet werden. Kontexte, die im Legacy-Patchmodus ausgeführt werden, müssen weiterhin die alte Render-Funktion verwenden.

Obwohl der Benutzermodustreiber keine Patchspeicherorte generiert, muss er dennoch eine Liste von Primärvorgängen generieren, in die geschrieben wird. Der Videospeicher-Manager verwendet die Zuordnungsliste, um zu bestimmen, auf welche primären Zuordnungen für den Schreibvorgang von den einzelnen Befehlspuffern verwiesen wird. Diese Informationen werden verwendet, um das Rendern mit den Primaren mit Flip-Vorgängen zu synchronisieren.

Einige Kernelmodustreiber benötigen Informationen von ihrem Benutzermodustreiber darüber, wie sie einen bestimmten DMA-Puffer (Direct Memory Access) an ihre GPU übermitteln. In Windows Display Driver Model (WDDM) 1.0 wurden diese Informationen vom Benutzermodustreiber über den Befehlspuffer an den Kernelmodustreiber gesendet. Da DMA-Puffer direkt vom Benutzermodustreiber erstellt und ohne Änderung an die GPU übermittelt werden, können sie nicht mehr zum Senden von Informationen an den Kerneltreiber verwendet werden. Um die Übertragung von Informationen zwischen dem Benutzermodus und Kernelmodustreibern zu ermöglichen, wurde ein expliziter privater Treiberdatenpuffer hinzugefügt, der zusammen mit einer Übermittlung gesendet werden soll.

Hinweis

Diese privaten Treiberdaten sind unidirektional, und der Kernelmodustreiber kann über diesen Puffer keine Informationen an den Benutzermodustreiber zurückgeben.

Anforderungen

Anforderung Wert
Unterstützte Mindestversion (Client) Windows 10
Unterstützte Mindestversion (Server) Windows Server 2016
Zielplattform Universell
Header d3dkmthk.h (include D3dkmthk.h)
Bibliothek Gdi32.lib
DLL Gdi32.dll

Weitere Informationen

D3DKMT_SUBMITCOMMAND