Função DriverEntry de um driver de miniporta de exibição
A função DriverEntry fornece ao subsistema de kernel de gráficos DirectX (Dxgkrnl) um conjunto de ponteiros para funções que o driver de miniporta de exibição (KMD) implementa.
Sintaxe
NTSTATUS DriverEntry(
_In_ PDRIVER_OBJECT DriverObject,
_In_ PUNICODE_STRING RegistryPath
);
Parâmetros
O DriverObject é um ponteiro para uma estrutura DRIVER_OBJECT que representa o driver formado pelo par de drivers (miniporta de exibição, porta de exibição).
O RegistryPath é um ponteiro para uma estrutura UNICODE_STRING que fornece o caminho para a chave de registro do driver.
Valor retornado
A DriverEntry deve retornar o valor retornado pela chamada para DxgkInitialize.
Comentários
A DriverEntry deve executar as seguintes etapas:
Alocar uma estrutura DRIVER_INITIALIZATION_DATA e definir o seu membro de Versão como DXGKDDI_INTERFACE_VERSION, que é definido em Dispmprt.h.
Preencher os membros restantes de DRIVER_INITIALIZATION_DATA com os ponteiros para as funções que o KMD implementa.
Passar o DriverObject, RegistryPath e a estrutura preenchida DRIVER_INITIALIZATION_DATA para DxgkInitialize.
Retornar o valor retornado por DxgkInitialize.
A estrutura DRIVER_INITIALIZATION_DATA não precisa permanecer na memória após o retorno da DriverEntry.
A DriverEntry deve ser tornada paginável.
A DriverEntry para um driver somente de exibição no modo kernel
Para a interface driver somente de exibição no modo kernel (KMDOD), a estrutura KMDDOD_INITIALIZATION_DATA lista todas as funções que podem ser implementadas por um KMDOD. Todas essas funções, exceto a DxgkDdiPresentDisplayOnly , também podem ser implementadas por um driver de miniporta de exibição completo (KMD). A função DriverEntry do KMDOD fornece ponteiros de função para o driver da porta de exibição preenchendo todos os membros do KMDDOD_INITIALIZATION_DATA e, em seguida, passando essa estrutura para a função DxgkInitializeDisplayOnlyDriver.
Se um KMDOD não suportar o recurso de controle VSync, ele não deverá implementar determinadas funções. Consulte Poupar energia com o controle VSync.
As seguintes estruturas e enumeração também são usadas com KMDODs:
- D3DKMT_MOVE_RECT
- D3DKMT_PRESENT_DISPLAY_ONLY_FLAGS
- DXGK_PRESENT_DISPLAY_ONLY_PROGRESS_ID
- DXGKARG_PRESENT_DISPLAYONLY
- DXGKARGCB_PRESENT_DISPLAYONLY_PROGRESS
Requisitos
Requisito | Detalhe |
---|---|
Plataforma de destino | Área de trabalho |
Cliente mínimo com suporte | Windows Vista |
Biblioteca | NtosKrnl.lib |
DLL | NtosKrnl.exe |