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 |