Condividi tramite


Metodo IWDFDriver::CreateWdfObject (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 CreateWdfObject crea un oggetto WDF personalizzato (o utente) da un oggetto WDF padre.

Sintassi

HRESULT CreateWdfObject(
  [in, optional] IUnknown   *pCallbackInterface,
  [in, optional] IWDFObject *pParentObject,
  [out]          IWDFObject **ppWdfObject
);

Parametri

[in, optional] pCallbackInterface

Puntatore all'interfaccia IUnknown utilizzata dal framework per determinare le funzioni di callback degli eventi correlate all'oggetto sottoscritte dal driver nell'oggetto personalizzato appena creato. Questo parametro è facoltativo. Il driver può passare NULL se il driver non richiede la notifica. Se il driver passa un puntatore valido, il framework chiamerà queryInterface nell'interfaccia IUnknown per l'interfaccia IObjectCleanup. Se il framework ottiene l'interfaccia di IObjectCleanup del driver, il framework può successivamente chiamare il metodo IObjectCleanup::OnCleanup del driver per notificare al driver che l'oggetto personalizzato è stato pulito.

[in, optional] pParentObject

Puntatore all'interfaccia IWDFObject per l'oggetto WDF padre. Se NULL, l'oggetto driver diventa l'elemento padre predefinito.

[out] ppWdfObject

Puntatore a un buffer che riceve un puntatore all'interfaccia IWDFObject per l'oggetto WDF appena creato.

Valore restituito

CreateWdfObject restituisce S_OK se l'operazione ha esito positivo. In caso contrario, questo metodo restituisce uno dei codici di errore definiti in Winerror.h.

Osservazioni

Il driver può chiamare CreateWdfObject per creare un oggetto di base framework generale per il proprio uso. Il driver può associare la memoria del contesto, assegnare un oggetto padre e registrare un'interfaccia IObjectCleanup. Il framework chiama successivamente il metodo IObjectCleanup::OnCleanup per pulire l'oggetto figlio.

Se non viene specificato alcun oggetto padre nel parametro pParentObject, il driver diventa l'elemento padre predefinito. Pertanto, quando l'oggetto driver viene eliminato, il framework pulisce l'oggetto figlio.

Se viene assegnato un oggetto padre, l'oggetto figlio viene eliminato quando l'oggetto padre viene eliminato. In altre parole, la durata di un oggetto figlio ha come ambito quello dell'elemento padre.

Se il driver deve pulire l'oggetto figlio prima dell'eliminazione dell'oggetto padre, il driver può chiamare il metodo IWDFObject::D eleteWdfObject.

Fabbisogno

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
piattaforma di destinazione Desktop
versione minima di UMDF 1.5
intestazione wudfddi.h (include Wudfddi.h)
dll WUDFx.dll

Vedere anche

IObjectCleanup

IObjectCleanup::OnCleanup

IWDFDriver

IWDFObject

IWDFObject::D eleteWdfObject