Nota
O acesso a esta página requer autorização. Podes tentar iniciar sessão ou mudar de diretório.
O acesso a esta página requer autorização. Podes tentar mudar de diretório.
As responsabilidades exigidas e ordenadas de uma rotina DriverEntry são as seguintes:
Forneça pontos de entrada para as rotinas padrão do driver.
O driver armazena pontos de entrada para muitas rotinas padrão no objeto do driver ou na extensão do driver. Esses pontos de entrada incluem aqueles para a rotina AddDevice do motorista, rotinas de despacho, rotina StartIo e rotina de descarga . Por exemplo, um driver definiria os pontos de entrada para suas rotinas AddDevice, DispatchPnP e DispatchPower com instruções como as seguintes (Xxx é um espaço reservado para um prefixo fornecido pelo fornecedor que identifica o driver):
: DriverObject->DriverExtension->AddDevice = XxxAddDevice; DriverObject->MajorFunction[IRP_MJ_PNP] = XxxDispatchPnp; DriverObject->MajorFunction[IRP_MJ_POWER] = XxxDispatchPower; :Rotinas padrão adicionais, como ISRs ou rotinas IoCompletion, são especificadas através da chamada de rotinas de suporte do sistema. Para obter mais informações, consulte as descrições de rotinas de driver padrão individuais.
Crie e/ou inicialize vários objetos, tipos ou recursos a nível do driver. Observe que a maioria das rotinas padrão usa objetos por dispositivo, portanto, os drivers devem configurar esses objetos em suas rotinas AddDevice ou depois de receber uma solicitação IRP_MN_START_DEVICE .
Se o driver tiver uma thread dedicada ao dispositivo ou aguardar por quaisquer objetos de despacho definidos pelo kernel, a rotina DriverEntry poderá inicializar objetos de despacho do kernel. (Dependendo de como o driver usa o(s) objeto(s), ele pode, em vez disso, executar essa tarefa em sua rotina AddDevice ou depois de receber uma solicitação IRP_MN_START_DEVICE .)
Liberte qualquer memória que tenha alocado e que já não seja necessária.
Retorna NTSTATUS indicando se o driver foi carregado com êxito e pode aceitar e processar solicitações do gerenciador PnP para configurar, adicionar e iniciar seus dispositivos. (Consulte os "Valores de Retorno do DriverEntry".)