DriverEntry-Funktion eines Display-Miniporttreibers
Die DriverEntry-Funktion stellt das DirectX-Grafik-Kernelsubsystem (Dxgkrnl) mit einer Reihe von Zeigern auf Funktionen bereit, die der Display-Miniporttreiber (KMD) implementiert.
Syntax
NTSTATUS DriverEntry(
_In_ PDRIVER_OBJECT DriverObject,
_In_ PUNICODE_STRING RegistryPath
);
Parameter
DriverObject ist ein Zeiger auf eine DRIVER_OBJECT-Struktur, die den Treiber darstellt, der durch das Treiberpaar (Display-Miniport, Anzeigeport) gebildet wird.
RegistryPath ist ein Zeiger auf eine UNICODE_STRING-Struktur, die den Pfad zum Registrierungsschlüssel des Treibers bereitstellt.
Rückgabewert
DriverEntry muss den Wert zurückgeben, der vom Aufruf von DxgkInitialize zurückgegeben wird.
Hinweise
DriverEntry muss die folgenden Schritte ausführen:
Ordnen Sie eine DRIVER_INITIALIZATION_DATA-Struktur zu und legen Sie deren Version-Element auf DXGKDDI_INTERFACE_VERSION fest, was in Dispmprt.h definiert ist.
Füllen Sie die verbleibenden Elemente von DRIVER_INITIALIZATION_DATA mit Zeigern auf die Funktionen aus, die KMD implementiert.
Übergeben Sie DriverObject, RegistryPath und die ausgefüllte Struktur DRIVER_INITIALIZATION_DATA an DxgkInitialize.
Gibt den von DxgkInitialize zurückgegebenen Wert zurück.
Die DRIVER_INITIALIZATION_DATA-Struktur muss nicht im Speicher verbleiben, nachdem DriverEntry zurückgegeben wurde.
DriverEntry sollte seitenfähig gemacht werden.
DriverEntry für einen Nur-Kernelmodus-Treiber
Für die Kernelmodusanzeigetreiberschnittstelle (KMDOD) listet die KMDDOD_INITIALIZATION_DATA-Struktur alle Funktionen auf, die von einem KMDOD implementiert werden können. Alle diese Funktionen, mit Ausnahme der DxgkDdiPresentDisplayOnly-Funktion können auch von einem Miniporttreiber (Full Display Miniport Driver, KMD) implementiert werden. Die KMDOD's DriverEntry-Funktion stellt Funktionszeiger für den Displayport-Treiber bereit, indem sie alle Mitglieder von KMDDOD_INITIALIZATION_DATA ausfüllt und diese Struktur dann an die Funktion DxgkInitializeDisplayOnlyDriver übergibt.
Wenn ein KMDOD das VSync-Steuerelementfeature nicht unterstützt, sollte es keine bestimmten Funktionen implementieren. Siehe Speichern von Energie mit VSync-Steuerelement.
Die folgenden Strukturen und Enumerationen werden auch mit KMDODs verwendet:
- D3DKMT_MOVE_RECT
- D3DKMT_PRESENT_DISPLAY_ONLY_FLAGS
- DXGK_PRESENT_DISPLAY_ONLY_PROGRESS_ID
- DXGKARG_PRESENT_DISPLAYONLY
- DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS
Anforderungen
Anforderung | Detail |
---|---|
Zielplattform | Desktop |
Unterstützte Mindestversion (Client) | Windows Vista |
Bibliothek | NtosKrnl.lib |
DLL | NtosKrnl.exe |