PdhOpenLogW 関数 (pdh.h)
指定したログ ファイルを読み取りまたは書き込み用に開きます。
構文
PDH_FUNCTION PdhOpenLogW(
[in] LPCWSTR szLogFileName,
[in] DWORD dwAccessFlags,
[in] LPDWORD lpdwLogType,
[in] PDH_HQUERY hQuery,
[in] DWORD dwMaxSize,
[in] LPCWSTR szUserCaption,
[out] PDH_HLOG *phLog
);
パラメーター
[in] szLogFileName
開くログ ファイルの名前を指定する Null で終わる文字列。 名前には、絶対パスまたは相対パスを含めることができます。
lpdwLogType パラメーターがPDH_LOG_TYPE_SQL場合は、ログ ファイルの名前を SQL:DataSourceName! という形式で指定します。LogFileName。
[in] dwAccessFlags
ログ ファイルを開くために使用するアクセスの種類。 次のいずれかの値を指定します。
値 | 説明 |
---|---|
|
ログ ファイルを開いて読み取ります。 |
|
書き込み用に新しいログ ファイルを開きます。 |
|
書き込み用に既存のログ ファイルを開きます。 |
ビットごとの包括 OR 演算子 (|) を使用して、アクセスの種類を次の作成フラグの 1 つ以上と組み合わせることができます。
値 | 説明 |
---|---|
|
指定した名前の新しいログ ファイルを作成します。 |
|
指定した名前の新しいログ ファイルを作成します。 ログ ファイルが既に存在する場合、関数は新しいファイルを作成する前に既存のログ ファイルを削除します。 |
|
指定した名前の既存のログ ファイルを開きます。 指定した名前のログ ファイルが存在しない場合、これはPDH_LOG_CREATE_NEWと等しくなります。 |
|
指定した名前の既存のログ ファイルを開くか、指定した名前の新しいログ ファイルを作成します。 |
|
指定した名前の循環ログ ファイルを作成します。 ファイルが dwMaxSize パラメーターの値に達すると、データはログ ファイルの先頭に折り返されます。 このフラグは、 lpdwLogType パラメーターが PDH_LOG_TYPE_BINARYされている場合にのみ指定できます。 |
|
pdhUpdateLog または PdhOpenLog の szUserString パラメーターで示されるユーザー キャプションまたはログ ファイルの説明を書き込むには、PDH_LOG_TYPE_TSVと共に使用されます。 ユーザー キャプションまたはログ ファイルの説明は、テキスト ログの最初の行の最後の列として書き込まれます。 |
[in] lpdwLogType
開くログ ファイルの種類。 このパラメーターには、次の値のいずれかを指定できます。
[in] hQuery
クエリ データをログ ファイルに書き込む場合は、クエリ ハンドルを指定します。 PdhOpenQuery 関数は、このハンドルを返します。
このパラメーターは無視され、ログ ファイルから読み取る場合は NULL にする必要があります。
[in] dwMaxSize
ログ ファイルの最大サイズ (バイト単位)。 ファイル サイズを制限する場合、または dwAccessFlags で PDH_LOG_OPT_CIRCULARを指定する場合は、最大サイズを指定します。それ以外の場合は、0 に設定します。
循環ログ ファイルの場合は、少なくとも 1 つのサンプルを保持するのに十分な大きさの値を指定する必要があります。 サンプル サイズは、収集されるデータによって異なります。 ただし、1 MB 以上の値を指定すると、ほとんどのサンプルがカバーされます。
[in] szUserCaption
ログ ファイルのユーザー定義のキャプションを指定する Null で終わる文字列。 ログ ファイル キャプションは、通常、ログ ファイルの内容を記述します。 既存のログ ファイルを開くと、このパラメーターの値は無視されます。
[out] phLog
開かれたログ ファイルを処理します。
戻り値
関数が成功すると、ERROR_SUCCESSが返されます。
関数が失敗した場合、戻り値は システム エラー コード または PDH エラー コードです。
解説
この関数を使用してパフォーマンス データをログ ファイルに書き込むには、 PdhOpenQuery を使用してクエリを開き、この関数を呼び出す前に目的のカウンターを追加する必要があります。
新しいオペレーティング システムでは、古いオペレーティング システムで生成されたログ ファイルを読み取ることができます。ただし、Windows Vista 以降のオペレーティング システムで作成されたログ ファイルは、以前のオペレーティング システムでは読み取ることができません。
ログ ファイルには次の規則が適用されます
READ_ACCESSにはOPEN_EXISTINGが必要です。
UPDATE_ACCESSファイルベースのログでは使用できません。 データベース ログでのみ使用できます。
WRITE_ACCESSには、CREATE_NEW、CREATE_ALWAYS、OPEN_EXISTING、OPEN_ALWAYSのいずれかが必要です。
例
例については、「 ログ ファイルへのパフォーマンス データの書き込み」を参照してください。
注意
pdh.h ヘッダーは、Unicode プリプロセッサ定数の定義に基づいて、この関数の ANSI または Unicode バージョンを自動的に選択するエイリアスとして PdhOpenLog を定義します。 encoding-neutral エイリアスの使用を encoding-neutral ではないコードと混在すると、コンパイル エラーまたはランタイム エラーが発生する不一致が発生する可能性があります。 詳細については、「 関数プロトタイプの規則」を参照してください。
要件
サポートされている最小のクライアント | Windows XP (デスクトップ アプリのみ) |
サポートされている最小のサーバー | Windows Server 2003 (デスクトップ アプリのみ) |
対象プラットフォーム | Windows |
ヘッダー | pdh.h |
Library | Pdh.lib |
[DLL] | Pdh.dll |