WdfObjectDereferenceActual 函式 (wdfobject.h)
[適用於 KMDF 和 UMDF]
WdfObjectDereferenceActual 方法會遞減指定架構對象的參考計數,並將標記值、行號和檔名指派給參考。
語法
void WdfObjectDereferenceActual(
[in] WDFOBJECT Handle,
[in, optional] PVOID Tag,
[in] LONG Line,
[in, optional] PCCH File
);
參數
[in] Handle
架構物件的句柄。
[in, optional] Tag
識別物件參考的驅動程式定義值。 標記值必須符合驅動程式先前提供給 WdfObjectReferenceActual 的標記值。
[in] Line
數值,表示驅動程式來源檔案中的行號。
[in, optional] File
代表驅動程式原始程式檔名稱之 Null 終止常數位符字串的指標。 這個參數是選擇性的,而且可以是 NULL。
傳回值
無
備註
如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。
如果對象的參考計數變成零,在 WdfObjectDereferenceActual 傳回之前,可能會刪除物件。
呼叫 WdfObjectDereferenceActual 或 WdfObjectDereferenceWithTag ,而不是 WdfObjectDereference 可提供 Microsoft 調試程式 (標記字符串、行號和檔名) 的其他資訊。 WdfObjectDereferenceActual 可讓您的驅動程式指定行號和檔名,而 WdfObjectDereferenceWithTag 則使用驅動程式目前的行號和檔名。
您可以使用 !wdftagtracker 調試程序擴展名來檢視、行號和檔名值。 調試程式延伸模組會將標記值同時顯示為指標和一系列字元。 如需調試程式擴充功能的詳細資訊,請參閱 對 KMDF 驅動程式進行偵錯。
如需對象參考計數和架構物件階層清除規則的詳細資訊,請參閱 Framework 物件生命週期。
範例
下列程式代碼範例會遞減對象的參考計數,並將標記值、行號和檔名指派給參考。
WdfObjectDereferenceActual(
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) |