PERF_COUNTER_DEFINITION構造体 (winperf.h)
パフォーマンス カウンターについて説明します。
構文
typedef struct _PERF_COUNTER_DEFINITION {
DWORD ByteLength;
DWORD CounterNameTitleIndex;
#if ...
DWORD CounterNameTitle;
#else
LPWSTR CounterNameTitle;
#endif
DWORD CounterHelpTitleIndex;
#if ...
DWORD CounterHelpTitle;
#else
LPWSTR CounterHelpTitle;
#endif
LONG DefaultScale;
DWORD DetailLevel;
DWORD CounterType;
DWORD CounterSize;
DWORD CounterOffset;
} PERF_COUNTER_DEFINITION, *PPERF_COUNTER_DEFINITION;
メンバー
ByteLength
この構造体のサイズ (バイト単位)。
CounterNameTitleIndex
タイトル データベース内のカウンターの名前のインデックス。 インデックスを使用してカウンターの名前を取得する方法の詳細については、「 カウンター名の取得」および「ヘルプ テキスト」を参照してください。
この値を設定するために、プロバイダーはシンボル ファイルで定義されているカウンターのオフセット値を First Counter レジストリ値に追加します。 詳細については、「レジストリへのカウンター名と説明の追加」および「OpenPerformanceData 関数の実装」を参照してください。
カウンターがベース カウンターの場合、この値は 0 にする必要があります (CounterType には、PERF_COUNTER_BASE フラグが含まれています)。
CounterNameTitle
予約済み。
CounterHelpTitleIndex
タイトル データベース内のカウンターのヘルプ テキストにインデックスを付けます。 インデックスを使用してカウンターのヘルプ テキストを取得する方法の詳細については、「 カウンター名とヘルプ テキストの取得」を参照してください。
この値を設定するために、プロバイダーはシンボル ファイルで定義されているカウンターのオフセット値を First Help レジストリ値に追加します。 詳細については、「レジストリへのカウンター名と説明の追加」および「OpenPerformanceData 関数の実装」を参照してください。
カウンターがベース カウンターの場合、この値は 0 にする必要があります (CounterType には、PERF_COUNTER_BASE フラグが含まれています)。
CounterHelpTitle
予約済み。
DefaultScale
カウンター値をグラフ化するときに使用するスケール ファクター。 有効な値の範囲は -7 から 7 です (値は 0.0000001 - 10000000 に対応します)。 この値が 0 の場合、スケール値は 1 になります。この値が 1 の場合、スケール値は 10 になります。この値が –1 の場合、スケール値は .10 になります。などなど。
DetailLevel
カウンターの詳細レベル。 コンシューマーはこの値を使用して、表示の複雑さを制御します。 このメンバーには、次のいずれかの値を指定できます。
CounterType
カウンターの種類。 定義済みのカウンターの種類の一覧については、 Windows Server 2003 展開キットのカウンターの種類に関するセクションを参照してください。 コンシューマーはカウンターの種類を使用して、カウンター値を計算して表示する方法を決定します。 プロバイダーは、カウンターの種類の選択を定義済みのリストに制限する必要があります。
CounterSize
カウンター サイズ (バイト単位)。
現在、カウンター値を提供するために使用されるのは DWORD (4 バイト) と ULONGLONG (8 バイト) のみです。
CounterOffset
PERF_COUNTER_BLOCK構造体の先頭からこのカウンターの最初のバイトへのオフセット。 PERF_OBJECT_TYPE ブロック内のPERF_COUNTER_BLOCK構造体の場所は、オブジェクトにインスタンスが含まれているかどうかによって異なります。 詳細については、「 パフォーマンス データ形式」を参照してください。
複数のカウンターで同じ生データを使用し、 PERF_COUNTER_BLOCK ブロック内の同じオフセットをポイントできることに注意してください。
解説
PERF_OBJECT_TYPE構造体には、1 つ以上のカウンターが含まれています。 この構造体は、各カウンターを定義し、その値にオフセットを与えます。 これらの構造体は、メモリ内の PERF_OBJECT_TYPE 構造に従います。 詳細については、「 パフォーマンス データ形式」を参照してください。
プロバイダーは、カウンターのクエリを実行するたびに、カウンターを同じ順序で提供する必要があります。 カウンターが計算でベース カウンターを使用する場合 (カウンターの種類に PERF_COUNTER_FRACTION フラグが含まれている場合)、カウンターの一覧でこのカウンターに従う必要があります。 カウンターの種類に PERF_MULTI_COUNTER フラグが含まれている場合、2 番目のカウンター値は 、PERF_COUNTER_BLOCK ブロック内のこのカウンターの値に従う必要があります。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
Header | winperf.h (Windows.h を含む) |