共用方式為


(KMDF) IRQL 規則集

使用這些規則來確認您的驅動程式在必要的 IRQL 進行 DDI 呼叫。

未遵循 IRQL 規則的驅動程式可能會導致作業期間發生嚴重問題,導致死結狀況或電腦當機。

本節內容

主題 描述

KmdfIrql

KmdfIrql 規則會指定驅動程式在 IRQL 上呼叫架構方法,其小於或等於該方法的最大 IRQL。

KmdfIrql2

KmdfIrql2 規則會指定驅動程式在 IRQL 上呼叫架構方法,其小於或等於該方法的最大 IRQL。

UsbKmdfIrql

UsbKmdfIrql 規則指定 KMDF 驅動程式不會在不正確的 IRQL 層級呼叫 USB 特定裝置驅動程式介面 (DDI) 。

UsbKmdfIrql2

UsbKmdfIrql2 規則指定 KMDF 驅動程式不應該在不正確的 IRQL 層級呼叫 USB 特定的 DDI。

UsbKmdfIrqlExplicit

UsbKmdfIrqlExplicit 規則會確認在正確的 IRQL 層級呼叫 KMDF DDI。 此規則適用於所有 EvtIoCallback 函式。

WdfRequestSendSyncAtDispatch

WdfRequestSendSyncAtDispatch 規則會確認 WdfRequestSend 函式是以正確的 IRQL 優先順序層級傳送。

WdfRequestSendSyncAtDispatch2

WdfRequestSendSyncAtDispatch2 規則會確認 WdfRequestSend 函式是以正確的 IRQL 優先順序層級傳送。

若要選取 Irql 規則集

  1. 在 Microsoft Visual Studio 中選取驅動程式項目 (.vcxProj) 。 從 [ 驅動程式 ] 功能表中,按兩下 [ 啟動靜態驅動程序驗證程式...]。

  2. 按兩下 [ 規則] 索引標籤 。在 [規則集] 底下,選取 [Irql]。

    若要從 Visual Studio 開發人員命令提示字元視窗中選取預設規則集,請使用 /check 選項指定 Irql.sdv。 例如:

    msbuild /t:sdv /p:Inputs="/check:Irql.sdv" mydriver.VcxProj /p:Configuration="Win8 Release" /p:Platform=Win32
    

    如需詳細資訊,請參閱 使用靜態驅動程式驗證器在驅動程式靜態驅動程式驗證器命令 中尋找瑕疵 (MSBuild) 。