Condividi tramite


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. Non vengono aggiunte nuove funzionalità 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, vedi Introduzione a 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.

Osservazioni

Viene creato un nuovo oggetto dispositivo per ogni dispositivo caricato nel processo host del driver. Quando arriva un nuovo dispositivo nel sistema, il framework chiama OnDeviceAdd per notificare al driver l'arrivo e passa il IWDFDriver e IWDFDeviceInitialize interfacce nella chiamata. Il driver può chiamare il metodo IWDFDeviceInitialize::RetrieveDevicePropertyStore per cercare le informazioni sul dispositivo fornite nell'ambito 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 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.

Fabbisogno

Requisito Valore
piattaforma di destinazione Finestre
intestazione wudfddi.h (include Wudfddi.h)

Vedere anche

IDriverEntry

IPnpCallbackHardware::OnReleaseHardware

IWDFDeviceInitialize

IWDFDeviceInitialize::RetrieveDevicePropertyStore

IWDFDriver

IWDFDriver::CreateDevice