Nota
O acesso a esta página requer autorização. Pode tentar iniciar sessão ou alterar os diretórios.
O acesso a esta página requer autorização. Pode tentar alterar os diretórios.
[Aplica-se a KMDF e UMDF]
O do driver EvtDriverDeviceAdd função de retorno de chamada de evento executa operações de inicialização do dispositivo quando o gerenciador do Plug and Play (PnP) relata a existência de um dispositivo.
Sintaxe
EVT_WDF_DRIVER_DEVICE_ADD EvtWdfDriverDeviceAdd;
NTSTATUS EvtWdfDriverDeviceAdd(
[in] WDFDRIVER Driver,
[in, out] PWDFDEVICE_INIT DeviceInit
)
{...}
Parâmetros
[in] Driver
Um identificador para um objeto de driver de estrutura que representa o driver.
[in, out] DeviceInit
Um ponteiro para uma estrutura de WDFDEVICE_INIT alocada por estrutura.
Valor de retorno
A função de retorno de chamada EvtDriverDeviceAdd deve retornar STATUS_SUCCESS se a operação for bem-sucedida. Caso contrário, essa função de retorno de chamada deve retornar um dos valores de status de erro definidos em Ntstatus.h. Para obter mais informações, consulte a seção Comentários a seguir.
Observações
Cada driver baseado em estrutura que dá suporte a dispositivos PnP deve fornecer a função de retorno de chamada EvtDriverDeviceAdd. O driver deve colocar o endereço da função de retorno de chamada em sua estrutura de WDF_DRIVER_CONFIG antes de chamar WdfDriverCreate.
A estrutura chama o do driver EvtDriverDeviceAdd função de retorno de chamada depois que um motorista de ônibus detecta um dispositivo que tem um identificador de hardware (ID) que corresponde a uma ID de hardware compatível com o driver. Especifique as IDs de hardware compatíveis com o driver fornecendo um arquivo INF, que o sistema operacional usa para instalar drivers na primeira vez que um de seus dispositivos estiver conectado ao computador. Para obter mais informações sobre como o sistema usa arquivos INF e IDs de hardware, consulte Como a instalação seleciona drivers.
A função de retorno de chamada EvtDriverDeviceAdd de um driver normalmente executa pelo menos algumas das seguintes operações de inicialização:
-
Criar um objeto de dispositivo de estrutura para representar o dispositivo.
-
Criar filas de E/S para que o driver possa receber solicitações de E/S.
-
Criar interfaces de dispositivo que os aplicativos usam para se comunicar com o dispositivo.
-
Criar interfaces definidas pelo driver que outros drivers podem usar.
- Inicialize suporte à WMI (Instrumentação de Gerenciamento do Windows).
-
Criar objetos de interrupção, se o driver manipular interrupções de dispositivo.
-
Habilitar transações de DMA (acesso direto à memória), se o driver manipular operações de DMA.
Se o do driver EvtDriverDeviceAdd função de retorno de chamada criar um objeto de dispositivo, mas não retornar STATUS_SUCCESS, a estrutura excluirá o objeto do dispositivo e seus dispositivos filho.
Se o EvtDriverDeviceAdd de um driver de função função de retorno de chamada não retornará STATUS_SUCCESS, o gerenciador de E/S não criará uma pilha de dispositivos para o dispositivo.
Se o EvtDriverDeviceAdd de um driver de filtro função de retorno de chamada não retornar STATUS_SUCCESS, a estrutura converterá o valor retornado em STATUS_SUCCESS e o gerenciador de E/S criará a pilha do dispositivo sem o driver de filtro.
Requisitos
| Requisito | Valor |
|---|---|
| da Plataforma de Destino | Universal |
| versão mínima do KMDF | 1.0 |
| versão mínima do UMDF | 2.0 |
| cabeçalho | wdfdriver.h (inclua Wdf.h) |
| IRQL | PASSIVE_LEVEL |