コントロール GUID
各トレース プロバイダーは、プロバイダーを一意に識別するコントロール GUID を定義します。 この GUID は、Event Tracing for Windows (ETW) を通じてトレース プロバイダーを有効または無効にするために使用されます。
コントロール GUID は、インストルメント化されたトレース プロバイダーのソース コード ファイルの WPP_CONTROL_GUIDSマクロに表示されます。
#define WPP_CONTROL_GUIDS \
WPP_DEFINE_CONTROL_GUID(GUIDFriendlyName, (ControlGUID), \
WPP_DEFINE_BIT(NameOfTraceFlag1) \
WPP_DEFINE_BIT(NameOfTraceFlag2) \
............................. \
............................. \
WPP_DEFINE_BIT(NameOfTraceFlag32) )
Tracepdb は、コントロール GUID と、PDB ファイルで表される各トレース プロバイダーのトレース レベルを含むトレース (MOF) ファイルを作成します。 MOF ファイルの名前は、トレース プロバイダーのモジュール名です。 -cオプションを使用すると、Tracepdb で TMC ファイルを生成することもできます。
コントロール GUID は ETW に対するトレース プロバイダーを識別するため、コントロール GUID を使用してトレース プロバイダーのスコープを定義および再定義できます。. たとえば、同じコントロール GUID を指定することで、複数のドライバーを 1 つのトレース プロバイダーの一部にすることができます。 または、WPP_CONTROL_GUIDS マクロの各インスタンスで異なるコントロール GUID を指定することにより、単一のドライバーに複数のトレース プロバイダーを含めることができます。