ドライバーの MOF ファイルのコンパイル

WMI データとイベント ブロックを定義する MOF ファイルをコンパイルするには、Microsoft Windows オペレーティング システムに含まれている Mofcomp と呼ばれる MOF コンパイラを使用します。 次の構文を使用します。

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

上記の構文では、次の項目が表示されます。

-WMI
filename.mof 内のすべてのクラスを WMI で使用するために検証します。 いずれかのクラス定義が無効な場合、Mofcomp は出力ファイル filename.bmfを削除します。 -WMIを省略した場合は、filename.bmfWmimofckを実行してクラスを検証する必要があります。 ドライバーは、WMI スイッチを使用するか、Wmimofck を実行して MOF を検証する必要があります。 そうしないと、MOF ファイルが WMI スキーマに正しく読み込まれない可能性があります。

-B:filename.bmf
CIMOM オブジェクト リポジトリに変更を加えることなく、プラットフォームに依存しないバイナリ バージョンの MOF ファイルを filename.bmfに作成するようにコンパイラに要求します。

filename.mof
入力 MOF ファイルの名前を指定します。

Mofcomp の使用方法の詳細については、コマンド プロンプト ウィンドウを開き、mofcomp /?と入力します。

Mofcomp の詳細については、Windows SDK のMofCompおよびその他のトピックを参照してください。

コンパイルされた MOF ファイルをリソースとしてドライバーのバイナリ イメージに含めるには、ドライバーのリソース スクリプト (RC) ファイルに次の行を追加します。

MofResource MOFDATAfilename.bmf

ドライバーは、登録要求 (Parameters.WMI.DataPath が WMIREGISTER に設定されたIRP_MN_REGINFOまたはIRP_MN_REGINFO_EX要求) に応答して MOF リソース名を指定します。

  • ドライバーが WMI ライブラリ ルーチンを使用して WMI IRP を処理する場合は、DpWmiQueryReginfoルーチンで MOF リソース名を指定します。

  • ドライバーが WMI IRP を直接処理している場合は、ドライバーが WMI に渡すWMIREGINFO構造体で MOF リソース名を指定します。

IRP_MN_REGINFOおよびIRP_MN_REGINFO_EX要求の処理の詳細については、WMI データ プロバイダーとしての登録 を参照してください。

WMI iibrary ルーチンを使用した WMI IRP の処理の詳細については、「WMI 要求の処理」を参照してください

実行可能ファイルにリソースを定義して含める方法の詳細については、Microsoft Windows SDK を参照してください。