Share via


WdfDeviceStopIdleWithTag 宏 (wdfdevice.h)

[適用於 KMDF 和 UMDF]

WdfDeviceStopIdleWithTag 宏會遞增指定架構裝置對象的電源參考計數,並將驅動程式目前的檔名和行號指派給參考。 宏也會將標記值指派給參考。

語法

NTSTATUS WdfDeviceStopIdleWithTag(
    _In_ WDFDEVICE Device,
    _In_ BOOLEAN WaitForD0,
    _In_ PVOID Tag
);

參數

[in] Device

架構裝置物件的句柄。

[in] WaitForD0

布爾值,指出 WdfDeviceStopIdleWithTag 何時會傳回。 如果 為 TRUE,它只會在指定的裝置進入 D0 裝置電源狀態之後傳回。 如果 為 FALSE,方法會立即傳回。

[in] Tag

架構儲存為電源參考之識別標記的驅動程式定義值。

傳回值

備註

如果作業成功, WdfDeviceStopIdleWithTag 會傳回STATUS_SUCCESS。

其他傳回值包括:

傳回碼 Description
STATUS_PENDING

裝置正以異步方式啟動。

STATUS_INVALID_DEVICE_STATE

驅動程式不是裝置的電源原則擁有者。

STATUS_POWER_STATE_INVALID

發生裝置失敗,且裝置無法進入其 D0 電源狀態。

方法可能會傳回其他 NTSTATUS值

如果驅動程式提供無效的物件句柄,就會發生錯誤檢查。

如果您的驅動程式呼叫 WdfDeviceStopIdleWithTag 來遞增參考計數,驅動程式必須呼叫 WdfDeviceResumeIdleWithTag 以遞減計數。

呼叫 WdfDeviceStopIdleWithTag 而不是 WdfDeviceStopIdle 提供您可以在 Microsoft 調試程序中檢視的其他資訊 (標記值、行號和) 檔名。 WdfDeviceStopIdleWithTag 會使用驅動程式目前的行號和檔名。

您可以使用 !wdftagtracker 調試程序擴展名來檢視、行號和檔名值。 調試程式延伸模組會將標記值同時顯示為指標和一系列字元。

在 上搭配詳細資訊旗標使用 !wdfkd.wdfdevice ,並在輸出中找到 !wdftagtracker 的連結:

kd> !wdfdevice <handle> f 

規格需求

需求
目標平台 Universal
最低 KMDF 版本 1.15
最低UMDF版本 2.15
標頭 wdfdevice.h (包含 Wdf.h)
程式庫 Wdf01000.sys (KMDF) ;WUDFx02000.dll (UMDF)
IRQL 請參閱一節。
DDI 合規性規則 DriverCreate、KmdfIrql、KmdfIrql2

另請參閱

在 WDF 中偵錯電源參考流失

WdfDeviceResumeIdle

WdfDeviceResumeIdleWithTag

WdfDeviceStopIdle