Método IDriverEntry::OnDeviceAdd (wudfddi.h)
[Aviso: UMDF 2 é a versão mais recente do UMDF e substitui UMDF 1. Todos os novos drivers UMDF devem ser gravados usando UMDF 2. Nenhum novo recurso está sendo adicionado ao UMDF 1 e há suporte limitado para UMDF 1 em versões mais recentes do Windows 10. Drivers universais do Windows devem usar UMDF 2. Para obter mais informações, consulte Introdução com UMDF.]
O método OnDeviceAdd adiciona um novo dispositivo a um sistema.
Sintaxe
HRESULT OnDeviceAdd(
[in] IWDFDriver *pWdfDriver,
[in] IWDFDeviceInitialize *pWdfDeviceInit
);
Parâmetros
[in] pWdfDriver
Um ponteiro para a interface IWDFDriver para o objeto de driver pai ao qual o novo dispositivo pertence.
[in] pWdfDeviceInit
Um ponteiro para a interface IWDFDeviceInitialize que o driver usa para inicializar o dispositivo recém-criado.
Retornar valor
OnDeviceAdd retornará S_OK se a operação for bem-sucedida. Caso contrário, esse método retornará um dos códigos de erro definidos em Winerror.h. O driver deverá retornar S_OK somente se tiver chamado com êxito o método IWDFDriver::CreateDevice para criar o objeto de dispositivo de estrutura. Se o driver retornar um código de erro, o UMDF desativará toda a pilha do dispositivo, independentemente de o driver ser um driver de filtro ou um driver de função.
Comentários
Um novo objeto de dispositivo é criado para cada dispositivo carregado no processo de host do driver. Quando um novo dispositivo chega ao sistema, a estrutura chama OnDeviceAdd para notificar o driver da chegada e passa as interfaces IWDFDriver e IWDFDeviceInitialize na chamada. O driver pode chamar o método IWDFDeviceInitialize::RetrieveDevicePropertyStore para consultar as informações do dispositivo fornecidas como parte da instalação do dispositivo. O driver deve chamar o método IWDFDriver::CreateDevice para configurar e criar o dispositivo. Se o driver não chamar IWDFDriver::CreateDevice com êxito antes de retornar S_OK, o UMDF determinará que o comportamento do driver está incorreto e encerrará o processo de host.
Qualquer driver cujo método OnDeviceAdd retorna S_OK receberá posteriormente uma chamada para o método IPnpCallbackHardware::OnReleaseHardware quando o UMDF derrubar a pilha do dispositivo.
Não use a interface IWDFDeviceInitialize para a qual o parâmetro pWdfDeviceInit aponta depois que o driver chamar IWDFDriver::CreateDevice.
Para obter mais informações, consulte Adicionando um dispositivo.
Requisitos
Requisito | Valor |
---|---|
Plataforma de Destino | Windows |
Cabeçalho | wudfddi.h (include Wudfddi.h) |
Confira também
IPnpCallbackHardware::OnReleaseHardware