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 info, vedi Introduzione con 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 usata dal framework per determinare le funzioni di callback degli eventi correlate agli oggetti sottoscritte dal driver nell'oggetto personalizzato appena creato. Questo parametro è facoltativo e, Il driver può passare NULL se il driver non richiede una 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 IObjectCleanup del driver, il framework può successivamente chiamare il metodo IObjectCleanup::OnCleanup del driver per notificare al driver che l'oggetto personalizzato viene 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.

Commenti

Il driver può chiamare CreateWdfObject per creare un oggetto di base del 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, l'ambito della durata di un oggetto figlio è compreso in 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 .

Requisiti

Requisito Valore
Fine del supporto Non disponibile in UMDF 2.0 e versioni successive.
Piattaforma di destinazione Desktop
Versione UMDF minima 1.5
Intestazione wudfddi.h (include Wudfddi.h)
DLL WUDFx.dll

Vedi anche

IObjectCleanup

IObjectCleanup::OnCleanup

IWDFDriver

IWDFObject

IWDFObject::D eleteWdfObject