WmiTraceMessage 関数 (wdm.h)
WmiTraceMessage ルーチンは、WPP ソフトウェア トレース セッションの出力ログにメッセージを追加します。
構文
NTSTATUS WmiTraceMessage(
[in] TRACELOGGER_HANDLE LoggerHandle,
[in] ULONG MessageFlags,
[in] LPCGUID MessageGuid,
[in] USHORT MessageNumber,
...
);
パラメーター
[in] LoggerHandle
ソフトウェア トレース セッションのトレース ハンドルを指定します。
[in] MessageFlags
1 つ以上のメッセージ フラグのビットごとの OR を指定します。 詳細については、「解説」を参照してください。
[in] MessageGuid
ソフトウェア トレース メッセージのクラスを識別する GUID を指定します。
[in] MessageNumber
メッセージのサブタイプを識別します。 サブタイプの意味は、ソフトウェア トレース クラスとプロバイダーに固有です。
[in] ...
メッセージ パーツのセットを指定するメッセージ パラメーターの必須リストを提供します。 パラメーターは、パラメーター ペアのシーケンスとして編成され、各ペアは完全なメッセージの 1 つの部分を指定します。 各パラメーター ペアは、データへの PVOID ポインターで構成され、その直後にデータの長さを指定する ULONG 値が続きます。 パラメーター リストは 、NULL PVOID ポインターの後に ULONG(0) が続く必要があります。
戻り値
WmiTraceMessage は 、次のいずれかの値を返します。
リターン コード | 説明 |
---|---|
|
操作は正常に完了しました。 |
|
LoggerHandle は有効なソフトウェア トレース ハンドルではありません。 |
|
メッセージをログに記録するためのバッファー メモリが不足しています。 「解説」を参照してください。 |
|
内部エラーが発生しました。 |
注釈
呼び出し元は 、WmiTraceMessage または WmiTraceMessageVa を使用して、WPP ソフトウェア トレース セッションの出力ログにメッセージを追加できます。 WmiTraceMessage は、WmiTraceMessageVa を呼び出す前に変数リスト メカニズムを処理することで、呼び出し元 のコードを簡略化します。
呼び出し元は、次のメッセージ フラグを設定できます。
フラグ | 説明 |
---|---|
TRACE_MESSAGE_SEQUENCE | メッセージにシーケンス番号を含めます。 メッセージ シーケンスは、 LoggerHandle で指定されたソフトウェア トレース セッションに設定されている場合にのみ使用できます。 |
TRACE_MESSAGE_GUID | MessageGuid は、ソフトウェア トレース クラスを識別する GUID を指定します。 このフラグは設定する必要があります。 |
TRACE_MESSAGE_TIMESTAMP | メッセージにタイム スタンプを含めます。 |
TRACE_MESSAGE_PERFORMANCE_TIMESTAMP | このフラグは実装されておらず、 廃止されています。 使用しないでください。 |
TRACE_MESSAGE_SYSTEMINFO | スレッド識別子 (TID) とプロセス識別子 (PID) をメッセージに含めます。 |
次のいずれかが当てはまる場合、メッセージはログに記録されません。
- メッセージ データとメッセージ ヘッダーの合計サイズ (バイト単位) は、ソフトウェア トレース セッションに割り当てられた個々のメッセージ バッファーのサイズを超えています。 (メッセージ ヘッダーの最大サイズは 48 バイトです)。
- ソフトウェア トレース セッションに割り当てられているすべてのメッセージ バッファーがいっぱいです。
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows XP 以降のバージョンの Windows で使用できます。 |
対象プラットフォーム | ユニバーサル |
Header | wdm.h (Wdm.h、Ntddk.h、Ntifs.h を含む) |
Library | NtosKrnl.lib |
[DLL] | NtosKrnl.exe |
IRQL | 「解説」を参照してください。 |