DriverEntry da função driver de miniporto de vídeo
DriverEntry é o ponto de entrada inicial no driver de miniporta de vídeo.
Sintaxe
ULONG DriverEntry(
_In_ PVOID Context1,
_In_ PVOID Context2
);
Parâmetros
Context1 [in] Ponteiro para um valor de contexto com o qual o driver de miniporto deve chamar VideoPortInitialize. Esse valor de contexto identifica o objeto de driver criado pelo sistema para esse driver de miniporto.
Context2 [in] Ponteiro para um segundo valor de contexto com o qual o driver de miniporto deve chamar VideoPortInitialize. Esse valor de contexto identifica o caminho do Registro para esse driver de miniporta.
Retornar valor
DriverEntry retorna o valor retornado por VideoPortInitialize.
Comentários
Cada driver de miniporta deve ter uma função explicitamente chamada DriverEntry para ser carregada. DriverEntry é chamado diretamente pelo sistema de E/S.
DriverEntry deve executar as seguintes etapas:
Aloque memória na pilha para uma estrutura VIDEO_HW_INITIALIZATION_DATA e chame VideoPortZeroMemory para inicializá-la zero.
Preencha valores específicos do driver e específicos do adaptador nos membros VIDEO_HW_INITIALIZATION_DATA, incluindo os pontos de entrada do driver de miniporto. Os seguintes pontos de entrada devem ser definidos como uma rotina fornecida pelo driver de miniport:
Se o hardware do driver der suporte a recursos herdados, o driver deverá reportá-los. DriverEntry deverá fazer o seguinte se a lista de recursos for conhecida no tempo de compilação do driver:
- Requeira e relate todos esses recursos nos membros HwLegacyResourceList e HwLegacyResourceCount da estrutura VIDEO_HW_INITIALIZATION_DATA . Os recursos herdados são aqueles recursos não listados no espaço de configuração PCI do dispositivo, mas que são decodificados pelo dispositivo.
- Preencha o campo RangePassive adequadamente para cada estrutura VIDEO_ACCESS_RANGE definida no driver de miniporta.
Se a lista de recursos herdada não puder ser determinada até o tempo de execução, o driver deverá implementar uma função HwVidLegacyResources para reportá-los.
Chame VideoPortInitialize, passando Context1 e Context2 como os dois primeiros parâmetros, um ponteiro para a estrutura VIDEO_HW_INITIALIZATION_DATA como o terceiro parâmetro e NULL como o quarto parâmetro.
DriverEntry deve propagar o valor retornado por VideoPortInitialize de volta para o chamador.
Se DriverEntry solicitar recursos, ele deverá incluir apenas os recursos que o hardware decodifica, mas que não são reivindicados pelo PCI. O driver de miniporta pode "recuperar" esses recursos herdados novamente em chamadas subsequentes para VideoPortVerifyAccessRanges; no entanto, o driver de porta de vídeo simplesmente ignorará as solicitações para esses recursos declarados anteriormente. O gerenciamento de energia e o encaixe serão desabilitados no sistema se o driver de miniporto tentar reivindicar um intervalo de acesso herdado em VideoPortVerifyAccessRanges que não foi declarado anteriormente no membro HwLegacyResourceList da estrutura VIDEO_HW_INITIALIZATION_DATA durante DriverEntry (ou em HwVidacyResources, se implementado).
Para drivers do Microsoft Windows 2000 e posteriores que também dão suporte a computadores que executam Windows NT 4.0, as constantes de configuração de hardware são definidas em video.h. Essas constantes são descritas na tabela a seguir.
Constante | Significado |
---|---|
SIZE_OF_NT4_VIDEO_PORT_CONFIG_INFO |
O tamanho, em bytes, do Windows NT estrutura de VIDEO_PORT_CONFIG_INFO 4,0. |
SIZE_OF_NT4_VIDEO_HW_INITIALIZATION_DATA |
O tamanho, em bytes, da estrutura de VIDEO_HW_INITIALIZATION_DATA Windows NT 4,0. Se VideoPortInitialize falhar, o driver de miniporto de vídeo deverá definir o membro HwInitDataSize da estrutura VIDEO_HW_INITIALIZATION_DATA para o tamanho da versão do Windows 2000 (e posterior) dessa estrutura ou da versão Windows NT 4.0. Escolha o tamanho da estrutura apropriado para corresponder à versão do sistema operacional na qual o driver de miniporto será executado. O driver de miniporta de vídeo deve chamar VideoPortInitialize novamente. Para obter um exemplo de uso, consulte os exemplos de driver de miniporto de vídeo que foram incluídos no DDK (Kit de Desenvolvimento de Driver do Windows). |
SIZE_OF_W2K_VIDEO_HW_INITIALIZATION_DATA |
O tamanho, em bytes, do Windows 2000 e posterior VIDEO_HW_INITIALIZATION_DATA estrutura. |
SIZE_OF_WXP_VIDEO_HW_INITIALIZATION_DATA |
O tamanho, em bytes, da estrutura do Windows Vista e posterior VIDEO_HW_INITIALIZATION_DATA . |
SIZE_OF_WXP_VIDEO_PORT_CONFIG_INFO |
O tamanho, em bytes, da estrutura de VIDEO_PORT_CONFIG_INFO do Windows Vista. |
DriverEntry deve ser tornado paginável.
Requisitos
Plataforma de destino |
Área de Trabalho |
parâmetro |
Video.h (incluir Video.h) |
Biblioteca |
NtosKrnl.lib |
DLL |
NtosKrnl.exe |
Confira também
Comentários
https://aka.ms/ContentUserFeedback.
Em breve: Ao longo de 2024, eliminaremos os problemas do GitHub como o mecanismo de comentários para conteúdo e o substituiremos por um novo sistema de comentários. Para obter mais informações, consulteEnviar e exibir comentários de