WdfObjectReferenceActual 函式 (wdfobject.h)
[適用於 KMDF 和 UMDF]
WdfObjectReferenceActual 方法會遞增指定架構對象的參考計數,並將標記值、行號和檔名指派給參考。
語法
void WdfObjectReferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in] PCCH File
);
參數
[in] Handle
架構物件的句柄。
[in, optional] Tag
架構儲存為對象參考之識別標記的驅動程式定義值。
[in] Line
數值,表示驅動程式來源檔案中的行號。
[in] File
代表驅動程式來源檔案名稱之 Null 終止常數位元字串的指標。 此參數是選擇性的,可以是 NULL。
傳回值
無
備註
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
如果您的驅動程式呼叫 WdfObjectReferenceActual 以遞增參考計數,驅動程式必須呼叫 WdfObjectDereferenceActual 來遞減計數。
呼叫 WdfObjectReferenceActual 或 WdfObjectReferenceWithTag 而不是 WdfObjectReference 會提供其他資訊 (標記值、行號和檔名) 給 Microsoft 調試程式。 WdfObjectReferenceActual 可讓您的驅動程式指定行號和檔名,而 WdfObjectReferenceWithTag 則會使用驅動程式目前的行號和檔名。
您可以使用 !wdftagtracker 調試程序擴展名來檢視卷標、行號和檔名值。 調試程式延伸模組會將標籤值顯示為指標和一系列字元。 如需調試程式延伸模組的詳細資訊,請參閱 對 KMDF 驅動程式進行偵錯。
如需對象參考計數的詳細資訊,請參閱 Framework 物件生命週期。
如需架構物件階層清除規則的詳細資訊,請參閱 Framework 物件生命週期。
範例
下列程式代碼範例會遞增對象的參考計數,並將標記值、行號和檔名指派給參考。
WdfObjectReferenceActual(
object,
pTag,
line,
FILE_NAME
);
規格需求
需求 | 值 |
---|---|
目標平台 | Universal |
最小 KMDF 版本 | 1.0 |
最低UMDF版本 | 2.0 |
標頭 | wdfobject.h (包含 Wdf.h) |
程式庫 | Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF) |
IRQL | <=DISPATCH_LEVEL |
DDI 合規性規則 | DriverCreate (kmdf) |