clfsReadLogRecord 函式 (wdm.h)
ClfsReadLogRecord 例程會讀取 CLFS 數據流中的目標記錄,並傳回呼叫端可用來讀取數據流中前面或追蹤該記錄的讀取內容。
語法
CLFSUSER_API NTSTATUS ClfsReadLogRecord(
[in] PVOID pvMarshalContext,
[in, out] PCLFS_LSN plsnFirst,
[in] CLFS_CONTEXT_MODE peContextMode,
[out] PVOID *ppvReadBuffer,
[out] PULONG pcbReadBuffer,
[out] PCLFS_RECORD_TYPE peRecordType,
[out] PCLFS_LSN plsnUndoNext,
[out] PCLFS_LSN plsnPrevious,
[out] PVOID *ppvReadContext
);
參數
[in] pvMarshalContext
代表封送處理區域的不透明內容的指標。 呼叫端先前藉由呼叫 ClfsCreateMarshallingArea 來取得此指標。
[in, out] plsnFirst
CLFS_LSN 結構的指標,提供記錄中目標記錄的 LSN。
[in] peContextMode
來自 CLFS_CONTEXT_MODE 列舉的值,指定 ppvReadContextContextContext 傳回之讀取內容的初始模式 (ClfsContextUndoNext、ClfsContextPrevious 或 ClfsContextForward) 。
[out] ppvReadBuffer
接收目標記錄之數據緩衝區指標的變數指標。
[out] pcbReadBuffer
ULONG 型別變數的指標,可接收 *ppvReadBuffer 所指向之緩衝區的大小,以位元組為單位。 這是目標記錄的數據緩衝區長度。
[out] peRecordType
CLFS_RECORD_TYPE類型的變數指標,可接收下列其中一個值。
值 | 意義 |
---|---|
ClfsDataRecord | 目標記錄是數據記錄。 |
ClfsRestartRecord | 目標記錄是重新啟動記錄。 |
[out] plsnUndoNext
接收目標記錄之復原下一個 LSN 之CLFS_LSN 結構的指標。
[out] plsnPrevious
接收目標記錄先前 LSN 之CLFS_LSN 結構的指標。
[out] ppvReadContext
接收不透明讀取內容指標之變數的指標。 用戶端會重複將此內容傳遞至 ClfsReadNextLogRecord ,以讀取序列中的其餘記錄。 用戶端讀取序列中的所有記錄之後,它會呼叫 ClfsTerminateReadLog 以釋放讀取內容。
傳回值
ClfsReadLogRecord 會在成功時傳回STATUS_SUCCESS;否則,它會傳回 Ntstatus.h 中定義的其中一個錯誤碼。
備註
當您使用讀取內容完成時,必須呼叫 ClfsTerminateReadLog ,以避免記憶體流失。
如需CLFS概念和術語的說明,請參閱 一般記錄檔系統。
如需從 CLFS 數據流讀取記錄的相關信息,請參閱從 CLFS 讀取數據記錄 Stream 和從 CLFS 讀取重新啟動記錄 Stream。
讀取內容不是安全線程。 用戶端負責串行化讀取內容的存取權。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | 適用於 Windows Server 2003 R2、Windows Vista 和更新版本的 Windows。 |
目標平台 | 桌面 |
標頭 | wdm.h (包含 Wdm.h) |
程式庫 | Clfs.lib |
Dll | Clfs.sys |
IRQL | <= APC_LEVEL |