Funzione ObfReferenceObject (wdm.h)
La routine ObfReferenceObject incrementa il conteggio dei riferimenti all'oggetto specificato.
Sintassi
LONG_PTR ObfReferenceObject(
[in] PVOID Object
);
Parametri
[in] Object
Puntatore all'oggetto. Il chiamante ha ottenuto questo parametro quando ha creato l'oggetto o da una chiamata precedente a ObReferenceObjectByHandle dopo aver aperto l'oggetto.
Valore restituito
ObfReferenceObject restituisce un valore riservato per l'uso del sistema. I driver devono considerare questo valore come VOID.
Commenti
ObfReferenceObject incrementa semplicemente il conteggio dei riferimenti del puntatore per un oggetto, senza effettuare controlli di accesso sull'oggetto specificato, come ObReferenceObjectByHandle e ObReferenceObjectByPointer .
ObfReferenceObject impedisce l'eliminazione dell'oggetto almeno finché il driver chiama successivamente il relativo reciproco, ObDereferenceObject o chiude l'oggetto specificato. Il chiamante deve decrerere il conteggio dei riferimenti con ObDereferenceObject non appena viene eseguito con l'oggetto.
Quando il conteggio dei riferimenti per un oggetto raggiunge zero, un componente in modalità kernel può rimuovere l'oggetto dal sistema. Tuttavia, un driver può rimuovere solo gli oggetti creati e un driver non dovrebbe mai tentare di rimuovere qualsiasi oggetto che non è stato creato.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows 2000. |
Piattaforma di destinazione | Desktop |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Libreria | NtosKrnl.lib |
DLL | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |
Regole di conformità DDI | HwStorPortProhibitedDDDIs(storport), TargetRelationNeedsRef(wdm) |