啟用錯誤插入

WdfTester 工具提供 WMI 介面,以針對特定驅動程式設定 DDI 錯誤插入。 提供的腳本 (WdftesterScript.wsf) ,其會使用此 WMI 介面來設定錯誤插入。 您可以撰寫自己的腳本,或使用提供的腳本來啟用錯誤插入。 您可以從命令提示字元視窗執行腳本 (WdftesterScript.wsf) ,以註冊、設定和取消註冊驅動程式。 腳本也有稱為 Runtest的命令列選項。

Runtest 選項的功能

Runtest選項會執行簡單的停用,並在驅動程式上啟用作業。 此選項示範如何使用工具。 首先,腳本會停用指定的驅動程式,然後加以啟用。 這可讓 WdfTester 監視停用和啟用作業期間所進行的所有 DDI 呼叫。 腳本會使用其中一個 WMI 介面來取得在此期間呼叫的 DIS 清單。 腳本會判斷這些 DIS 中的哪一個可能會失敗, (只傳回 NTSTATUS) 。 然後腳本會呼叫另一個 WMI 介面,以設定 WdfTester 使清單中的第一個 DDI 失敗。 腳本會停用並啟用驅動程式,這會導致 DDI 失敗並引發 WMI 事件。 腳本已經在等候 DDI 的 WMI 失敗事件。 如果成功收到事件,且失敗導致電腦沒有回應,或造成錯誤檢查 (由驅動程式開發人員或測試人員決定,) 測試視為成功。 然後,腳本會針對清單中的下一個 DDI 重複這些步驟。

注意Runtest選項會要求您複製DevCon (Devcon.exe) 工具,並將它放在與其他 Wdftester 檔案相同的目錄中。 Devcon.exe應用程式位於%WDKRoot%\tools\< platform >目錄中。

Runtest 選項:

  1. 向 WdfTester 註冊驅動程式。 如果您尚未安裝驅動程式,您必須先安裝它,才能使用 Runtest。

  2. 啟用此驅動程式的驅動程式驗證程式 (執行 Windows Vista 或更新版本的電腦不需要重新開機) 。

  3. 使用 Devcon 應用程式停用驅動程式。

  4. 使用 Devcon 應用程式啟用驅動程式。

  5. 擷取在啟用和停用作業期間呼叫的函式名稱,並識別傳回 NTSTATUS 且可能失敗的函式。

  6. 啟動非同步 WMI 事件通知。

  7. 對於從步驟 5 中取得的清單可能失敗的每個 DDI:

    1. 設定失敗的函式。
    2. 停用 ,然後使用 Devcon.exe 來啟用驅動程式。 此作業會呼叫 函式,而 WdfTester 會失敗函式呼叫。
    3. 等候 WMI 事件引發。
    4. 如果引發 WMI 事件, Runtest 選項會針對清單中的下一個函式重複步驟 7。
  8. 取消註冊驅動程式。