ObReferenceObject 宏 (wdm.h)
ObReferenceObject 例程會將參考計數遞增至指定的物件。
語法
void ObReferenceObject(
[in] Object
);
參數
[in] Object
物件的指標。 呼叫端在建立 物件時或從 先前呼叫 ObReferenceObjectByHandle 開啟對象之後取得此參數。
傳回值
無
備註
ObReferenceObject 會傳回保留供系統使用的值。 驅動程式必須將此值視為 VOID。
ObReferenceObject 只會遞增物件的指標參考計數,而不會對指定的對象進行任何存取檢查,如同 ObReferenceObjectByHandle 和 ObReferenceObjectByPointer。
ObReferenceObject 至少會防止刪除物件,直到驅動程式後續呼叫其相互 、ObDereferenceObject 或關閉指定的對象為止。 呼叫端必須在物件完成時,使用 ObDereferenceObject 遞減參考計數。
當對象的參考計數達到零時,核心模式元件可以從系統移除物件。 不過,驅動程式只能移除它所建立的物件,而且驅動程式不應該嘗試移除它未建立的任何物件。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 從 Windows 2000 開始提供。 |
目標平台 | 桌面 |
標頭 | wdm.h (包括 Wdm.h、Ntddk.h、Ntifs.h) |
程式庫 | NtosKrnl.lib |
Dll | NtosKrnl.exe |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | HwStorPortProhibitedDIS (storport) |