Metodo IDriverEntry::OnDeviceAdd (wudfddi.h)

[Avviso: UMDF 2 è la versione più recente di UMDF e sostituisce UMDF 1. Tutti i nuovi driver UMDF devono essere scritti usando UMDF 2. Nessuna nuova funzionalità viene aggiunta a UMDF 1 ed è disponibile un supporto limitato per UMDF 1 nelle versioni più recenti di Windows 10. I driver di Windows universali devono usare UMDF 2. Per altre informazioni, vedere Introduzione con UMDF.]

Il metodo OnDeviceAdd aggiunge un nuovo dispositivo a un sistema.

Sintassi

HRESULT OnDeviceAdd(
  [in] IWDFDriver           *pWdfDriver,
  [in] IWDFDeviceInitialize *pWdfDeviceInit
);

Parametri

[in] pWdfDriver

Puntatore all'interfaccia IWDFDriver per l'oggetto driver padre a cui appartiene il nuovo dispositivo.

[in] pWdfDeviceInit

Puntatore all'interfaccia IWDFDeviceInitialize usata dal driver per inizializzare il dispositivo appena creato.

Valore restituito

OnDeviceAdd restituisce S_OK se l'operazione ha esito positivo. In caso contrario, questo metodo restituisce uno dei codici di errore definiti in Winerror.h. Il driver deve restituire S_OK solo se ha chiamato correttamente il metodo IWDFDriver::CreateDevice per creare l'oggetto dispositivo framework. Se il driver restituisce un codice di errore, UMDF rimuove l'intero stack di dispositivi indipendentemente dal fatto che il driver sia un driver di filtro o un driver di funzione.

Commenti

Viene creato un nuovo oggetto dispositivo per ogni dispositivo caricato nel processo host driver. Quando un nuovo dispositivo arriva nel sistema, il framework chiama OnDeviceAdd per notificare al driver l'arrivo e passa le interfacce IWDFDriver e IWDFDeviceInitialize nella chiamata. Il driver può chiamare il metodo IWDFDeviceInitialize::RetrieveDevicePropertyStore per eseguire query sulle informazioni sul dispositivo fornite come parte dell'installazione del dispositivo. Il driver deve chiamare il metodo IWDFDriver::CreateDevice per configurare e creare il dispositivo. Se il driver non chiama correttamente IWDFDriver::CreateDevice prima di restituire S_OK, UMDF determina che il comportamento del driver non è corretto e termina il processo host.

Qualsiasi driver il cui metodo OnDeviceAdd restituisce S_OK riceverà successivamente una chiamata al relativo metodo IPnpCallbackHardware::OnReleaseHardware quando l'UMDF rimuove lo stack di dispositivi.

Non usare l'interfaccia IWDFDeviceInitialize a cui punta il parametro pWdfDeviceInit dopo che il driver ha chiamato IWDFDriver::CreateDevice.

Per altre informazioni, vedere Aggiunta di un dispositivo.

Requisiti

Requisito Valore
Piattaforma di destinazione Windows
Intestazione wudfddi.h (include Wudfddi.h)

Vedi anche

IDriverEntry

IPnpCallbackHardware::OnReleaseHardware

IWDFDeviceInitialize

IWDFDeviceInitialize::RetrieveDevicePropertyStore

IWDFDriver

IWDFDriver::CreateDevice