瞭解 Sdv-map.h 檔案
驗證驅動程式之前,SDV 會掃描驅動程式的原始程式碼,並在驅動程式的來原始目錄中建立 Sdv-map.h 檔案。 您應該先檢查並核准此標頭檔,再驗證驅動程式。
您也可以使用 staticdv /scan 命令來指示 SDV 掃描驅動程式的程式碼,並建立檔案。 如需指示,請參閱 掃描驅動程式。
如果 Sdv-map.h 檔案不完整或不正確,也就是說,如果遺漏任何進入點,或進入點與錯誤的函式角色類型相關聯,則驗證並不可靠。
如需 SDV 用於 WDM、KMDF 和 NDIS 驅動程式的函式清單,請參閱 使用函式角色類型宣告。
Sdv-map.h 檔案中顯示的函式角色類型是 SDV 在其規則驗證中使用的角色類型。 SDV 會使用您新增至標頭檔的功能角色類型宣告,在驅動程式的原始程式碼目錄中產生 Sdv-map.h 檔案。 在 Sdv-map.h 檔案中,SDV 會將宣告的驅動程式函式對應至 SDV 在驗證期間所使用的函式識別碼。 例如,針對 KMDF 驅動程式,稱為 MyDpc 的回呼函式可能會對應至fun_WDF_DPC_1。
SDV 不需要驅動程式針對它使用的所有回呼函式宣告函式角色類型。 只有在驅動程式已宣告 SDV 知道的函式角色類型,並正確解譯它時,才需要它。 如果驅動程式沒有 SDV 需要驗證特定規則的函式角色類型,SDV 會判定該規則不適用於驅動程式。 這不會被視為錯誤或瑕疵。
請務必先修正 Sdv-map.h 檔案中的任何錯誤,再驗證驅動程式。 如果檔案錯誤,驗證可能不可靠。