显示微型端口驱动程序的 DriverEntry 函数
DriverEntry 函数为 DirectX 图形内核子系统 (Dxgkrnl) 提供了一组指向显示微型端口驱动程序 (KMD) 实现的函数的指针。
语法
NTSTATUS DriverEntry(
_In_ PDRIVER_OBJECT DriverObject,
_In_ PUNICODE_STRING RegistryPath
);
参数
DriverObject 是指向 DRIVER_OBJECT 结构的指针,该结构表示由(显示微型端口、显示端口)驱动程序对构成的驱动程序。
RegistryPath 是指向 UNICODE_STRING 结构的指针,该结构提供驱动程序注册表项的路径。
返回值
DriverEntry 必须返回调用 DxgkInitialize 返回的值。
注解
DriverEntry 必须执行以下步骤:
分配一个 DRIVER_INITIALIZATION_DATA 结构,并将其 Version 成员设置为 DXGKDDI_INTERFACE_VERSION,该成员在 Dispmprt.h 中定义。
用指向 KMD 实现的函数的指针填充 DRIVER_INITIALIZATION_DATA 的其余成员。
将 DriverObject、RegistryPath 和填充 DRIVER_INITIALIZATION_DATA 结构传递给 DxgkInitialize。
返回由 DxgkInitialize 返回的值。
在 DriverEntry 返回后,DRIVER_INITIALIZATION_DATA 结构不需要保留在内存中。
DriverEntry 应可分页。
仅限内核模式显示驱动程序的 DriverEntry
对于仅限内核模式显示驱动程序 (KMDOD) 接口, KMDDOD_INITIALIZATION_DATA 结构列出了可由 KMDOD 实现的所有函数。 除 DxgkDdiPresentDisplayOnly 函数外,所有这些函数也可以由全显示微型端口驱动程序 (KMD) 实现。 KMDOD 的 DriverEntry 函数通过填充 KMDDOD_INITIALIZATION_DATA 的所有成员,然后将该结构传递给 DxgkInitializeDisplayOnlyDriver 函数,为显示端口驱动程序提供函数指针。
如果 KMDOD 不支持 VSync 控件功能,则不应实现某些函数。 请参阅使用 VSync 控件节省能源。
以下结构和枚举也与 KMDOD 一起使用:
- D3DKMT_MOVE_RECT
- D3DKMT_PRESENT_DISPLAY_ONLY_FLAGS
- DXGK_PRESENT_DISPLAY_ONLY_PROGRESS_ID
- DXGKARG_PRESENT_DISPLAYONLY
- DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS
要求
要求 | 详细信息 |
---|---|
目标平台 | 桌面 |
最低受支持的客户端 | Windows Vista |
Library | NtosKrnl.lib |
DLL | NtosKrnl.exe |