Condividi tramite


Macro WdfObjectReferenceWithTag

[Si applica a KMDF e UMDF]

La macro WdfObjectReferenceWithTag incrementa il conteggio dei riferimenti per un oggetto framework specificato e assegna il nome del file corrente e il numero di riga del driver al riferimento. La macro assegna inoltre un valore di tag al riferimento.

Sintassi

VOID WdfObjectReferenceWithTag(
  [in] WDFOBJECT Handle,
  [in] PVOID     Tag
);

Parametri

Handle [in]
Handle per un oggetto framework.

Tag [in]
Valore definito dal driver archiviato dal framework come tag di identificazione per il riferimento all'oggetto.

Valore restituito

Nessuno.

Se il driver fornisce un handle di oggetto non valido, si verifica un controllo di bug.

Commenti

Se il driver chiama WdfObjectReferenceWithTag per incrementare un conteggio dei riferimenti, il driver deve chiamare WdfObjectDereferenceWithTag per decrementare il conteggio.

La chiamata a WdfObjectReferenceActual o WdfObjectReferenceWithTag anziché WdfObjectReference fornisce informazioni aggiuntive (valore tag, numero di riga e nome file) ai debugger Microsoft. WdfObjectReferenceActual consente al driver di specificare il numero di riga e il nome del file, mentre WdfObjectReferenceWithTag usa il numero di riga e il nome file correnti del driver.

È possibile visualizzare i valori di tag, numero di riga e nome file usando l'estensione del debugger !wdftagtracker . L'estensione del debugger visualizza il valore del tag sia come puntatore che come serie di caratteri. Per altre informazioni sulle estensioni del debugger, vedere Debug di un driver KMDF.

Per altre informazioni sui conteggi dei riferimenti agli oggetti, vedere Ciclo di vita degli oggetti framework.

Esempio

Nell'esempio di codice seguente viene incrementato il conteggio dei riferimenti di un oggetto e viene assegnato un valore di tag al riferimento.

WdfObjectReferenceWithTag(
                          object,
                          pTag
                          );

Requisiti

Piattaforma di destinazione

Universale

Versione KMDF minima

1.0

Versione UMDF minima

2,0

Intestazione

Wdfobject.h (include Wdf.h)

Libreria

Wdf01000.sys (KMDF); WUDFx02000.dll (UMDF)

IRQL

<= DISPATCH_LEVEL

Vedi anche

WdfObjectReference