Share via


編譯驅動程式的MOF檔案

若要編譯定義 WMI 數據和事件區塊的 MOF 檔案,請使用 Microsoft Windows 操作系統隨附的 MOF 編譯程式,稱為 Mofcomp。 使用下列語法:

 mofcomp -WMI -B:filename.bmf filename.mof

下列專案會出現在上述語法中:

-Wmi
驗證 filename.mof 中的所有類別,以搭配 WMI 使用。 如果有任何類別定義無效,Mofcomp 會刪除輸出檔 filename.bmf。 如果省略 -WMI,您應該在 filename.bmf執行 Wmimofck 來驗證類別。 驅動程式必須使用 WMI 參數或執行 Wmimofck 來驗證 MOF。 若無法這麼做,可能會導致MOF檔案無法正確載入WMI架構。

-B:filename.bmf
要求編譯程式在 filename.bmf建立與平台無關的 MOF 檔案二進位版本,而不需對 CIMOM 物件存放庫進行任何修改。

filename.mof
指定輸入MOF檔案的名稱。

若要深入瞭解如何使用Mofcomp,請開啟命令提示字元視窗並輸入 mofcomp /?

如需Mofcomp的詳細資訊,請參閱 Windows SDK 中的MofComp 和其他主題。

若要在驅動程式的二進位映射中包含已編譯的MOF檔案作為資源,請將下列這一行新增至驅動程序的資源腳本 (RC) 檔案:

MofResource MOFDATAfilename.bmf

驅動程式會指定其MOF資源名稱,以回應註冊要求(參數.WMI.DataPath設定為WMIREGISTER的IRP_MN_REGINFOIRP_MN_REGINFO_EX要求):

  • 如果驅動程式使用 WMI 連結庫例程來處理 WMI IRP,它會在其 DpWmiQueryReginfo 例程中指定 MOF 資源名稱。

  • 如果驅動程式直接處理 WMI IRP,它會在驅動程式傳遞給 WMI 的 WMIREGINFO 結構中指定 MOF 資源名稱。

如需處理IRP_MN_REGINFO和IRP_MN_REGINFO_EX要求的詳細資訊,請參閱註冊為 WMI 數據提供者。

如需使用 WMI 連結庫例程處理 WMI IRP 的詳細資訊,請參閱 處理 WMI 要求

如需定義及包含可執行文件中資源的詳細資訊,請參閱 Microsoft Windows SDK。