共用方式為


PdhVbOpenLog 函式

PdhVbOpenLog函式會開啟指定的記錄檔以供讀取和寫入。 此函式會呼叫 PdhOpenLog

重要

本主題描述的函式未來可能會改變或無法使用。 相反地,Microsoft 建議您使用 效能計數器函式中所述的函式。

函式 PdhVbOpenLog ( _ ByVal szLogFileName As LPCTSTR, _ ByVal dwAccessFlags As DWORD, _ ByVal lpdwLogType As LPDWORD, _ ByVal hQuery As PDH_HQUERY, _ ByVal dwMaxSize As DWORD, _ ByVal szUserCaption As LPCSTR, _ ByRef phLog As PDH_HLOG _ ) As DWORD

參數

szLogFileName [in]

字串的指標,指定要開啟的記錄檔名稱。

如果記錄檔包含 SQL 資料,記錄檔的名稱格式為 **SQL:DataSourceName!**LogFileName。 在此情況下, lpdwLogType 參數的值PDH_LOG_TYPE_SQL。

dwAccessFlags [in]

開啟記錄檔時所要指定的存取類型。 此參數可以是下列其中一個值。

意義
PDH_LOG_READ_ACCESS
讀取作業會開啟記錄檔。
PDH_LOG_WRITE_ACCESS
寫入作業會開啟新的記錄檔。
PDH_LOG_UPDATE_ACCESS
已針對寫入作業開啟現有的記錄檔。

從上表選取的值可以使用 OR 運算子搭配下列其中一個建立存取旗標來結合。

意義
PDH_LOG_CREATE_NEW
會建立具有指定名稱的新記錄檔。
PDH_LOG_CREATE_ALWAYS
會建立具有指定名稱的新記錄檔,並清除任何具有相同名稱的現有記錄檔。
PDH_LOG_OPEN_EXISTING
開啟具有指定名稱的現有記錄檔。 如果具有指定名稱的記錄檔不存在,這等於PDH_LOG_CREATE_NEW。
PDH_LOG_OPEN_ALWAYS
已開啟具有指定名稱的現有記錄檔,或建立具有指定名稱的新記錄檔。

lpdwLogType [in]

變數的指標,指出要開啟的記錄檔類型。 此參數可以是下列其中一個值。

意義
PDH_LOG_TYPE_UNDEFINED
未定義的記錄檔格式。
PDH_LOG_TYPE_CSV
文字檔,其中包含第一行中的資料行標頭,以及每個後續這一行中的個別資料範例。
PDH_LOG_TYPE_SQL
記錄檔中的資料位於 SQL 中。
PDH_LOG_TYPE_TSV
與PDH_LOG_TYPE_CSV相同。
PDH_LOG_TYPE_BINARY
二進位記錄檔格式。 包含迴圈記錄檔。
PDH_LOG_TYPE_PERFMON
Perfmon 記錄檔格式。

hQuery [in]

查詢控制碼。 PdhVbOpenQuery函式會傳回此控制碼。

如果要開啟記錄檔以供讀取,這個參數可以是 Null

dwMaxSize [in]

記錄檔的大小上限,以位元組為單位。 只有在記錄檔的大小有限或迴圈記錄檔時,才會使用此值。

szUserCaption [in]

字串的指標,指定記錄檔的使用者定義標題。 記錄檔標題通常會描述記錄檔的內容。 開啟現有的記錄檔時,會忽略此參數的值。

phLog [in, ref]

接收已開啟之記錄檔控制碼的緩衝區指標。

傳回值

如果函式成功,則會傳回 0。

如果函式失敗,傳回值為 系統錯誤碼PDH 錯誤碼。 以下是可能的值。

傳回碼 Description
PDH_INSUFFICIENT_BUFFER
要求的資料大於提供的緩衝區。 無法傳回要求的資料。
PDH_INVALID_ARGUMENT
一或多個字串緩衝區不是正確的大小。
PDH_INVALID_HANDLE
控制代碼不是有效的 PDH 物件。
PDH_LOG_FILE_OPEN_ERROR
無法開啟指定的記錄檔。
PDH_FILE_NOT_FOUND
找不到指定的檔案。

備註

使用此函式將效能資料寫入記錄檔時,必須先使用 PdhVbOpenQuery開啟查詢。

目前必須有開啟的查詢,而且必須在呼叫此函式之前,將所需的計數器加入其中。

請注意,Perfmon 格式的記錄檔只能開啟以供讀取。

規格需求

需求
最低支援的用戶端
Windows XP [僅限傳統型應用程式]
最低支援的伺服器
Windows Server 2003 [僅限傳統型應用程式]
程式庫
Pdh.lib
DLL
Pdh.dll

另請參閱

PdhOpenLog

PdhVbGetLogFileSize

PdhVbUpdateLog