次の方法で共有


フレームワークのイベント ロガーの使用

フレームワークには、エラーおよびその他のイベントの記録を作成するイベント ロガー (フレームワークの "インフライト レコーダー (IFR)" とも呼ばれます) が用意されています**。この記録は、デバッガーまたは TraceView を使用して表示できます。

フレームワークのイベント ロガーは、常に有効になっています。

イベント ロガーは、メモリ バッファーに記録を格納します。LogPages レジストリ値を設定すると、バッファーのサイズを制御できます。

ドライバーの開発中は、VerboseOn レジストリ値を 0 以外の値に設定することもできます。このレジストリ値を設定すると、ドライバーのデバッグに役立つ可能性のある追加情報 (内部コード パスに対する入力や同パスから削除されるコードなど) が、イベント ロガーによって記録されます。

イベント ログの記録を表示するには、次の手順を完了する必要があります。

  1. コンピューターにデバッガーを接続します。

  2. デバッガーのシンボル パスに Microsoft Windows のシンボルを追加します。

    Windows のシンボルの入手方法、およびデバッガーのシンボル パスの設定方法については、Windows 用デバッグ ツールのパッケージに付属のドキュメントを参照してください。

  3. Wdfkd.dll 拡張機能ライブラリをデバッガーに読み込みます。

    デバッガーの拡張機能ライブラリの読み込み方法については、Windows 用デバッグ ツールのパッケージに付属のドキュメントを参照してください。

  4. デバッガーの拡張機能コマンド !wdftmffile を使用して、プラットフォーム別のトレース メッセージ フォーマット (.tmf) ファイルを指定します。

    WDK には、フレームワークのデバッガー拡張機能と TraceView によってフレームワークのイベント ログ記録を表示するために必要となる、.tmf ファイルが含まれています。これらのファイルは、プラットフォーム別の \tmf サブディレクトリにあります。

  5. 次のいずれかのデバッガー拡張機能コマンドを使用します。

    • !wdflogdump: イベント ロガーの記録を表示します。
    • !wdflogsave: イベント ロガーの記録を、TraceView で表示できるイベント トレース ログ (.etl) ファイルに保存します。

    さらに、!wdfsettraceprefix 拡張機能コマンドを使用して、!wdflogdump によって作成される表示のトレース メッセージ プレフィックスを設定できます。

デバッガー拡張機能コマンドの詳細については、「フレームワークベースのドライバーのデバッガー拡張機能」を参照してください。

イベント ログ記録をクラッシュ ダンプ ファイルに追加する場合は、ForceLogsInMiniDump レジストリ値を 0 以外の値に設定します。