共用方式為


ReadPreviousLogRestartArea 函式 (clfsw32.h)

讀取先前的記錄重新啟動區域,該區域相對於讀取內容 pvReadContext 中指定的目前重新啟動記錄。 此讀取內容是先前由 ReadLogRestartArea 呼叫所建立的內容。

語法

CLFSUSER_API BOOL ReadPreviousLogRestartArea(
  [in]                PVOID        pvReadContext,
  [out]               PVOID        *ppvRestartBuffer,
  [out]               PULONG       pcbRestartBuffer,
  [out]               PCLFS_LSN    plsnRestart,
  [in, out, optional] LPOVERLAPPED pOverlapped
);

參數

[in] pvReadContext

ReadLogRestartArea 傳回的系統配置讀取內容的指標。

即使這些函式 傳回ERROR_IO_PENDING,它們仍會傳回有效讀取內容的指標。 如需異步完成的相關信息,請參閱本主題的一節。

[out] ppvRestartBuffer

接收重新啟動數據指標之變數的指標。

[out] pcbRestartBuffer

*ppvRestartBuffer,以位元組為單位接收重新啟動數據大小的變數指標。

[out] plsnRestart

接收此函式傳回之重新啟動區域之記錄序號 (LSN) 之 CLFS_LSN 結構的指標。

[in, out, optional] pOverlapped

異步操作所需 之重疊 結構的指標。

如果未使用異步操作,這個參數可以是 NULL

傳回值

如果函式成功,則傳回非零的值。

如果此函式失敗,則傳回值為零。 若要取得擴充的錯誤資訊,請呼叫 GetLastError

下列清單會識別可能的錯誤碼:

備註

如果 CreateLogMarshallingArea 指定的記錄區塊大小不足以保存完整記錄區塊,則會傳回錯誤訊息ERROR_LOG_BLOCK_INCOMPLETE。

如果 ReadPreviousLogRestartArea 失敗並出現 錯誤碼ERROR_IO_PENDING,則有效的讀取內容的指標會放在 ppvReadContext 參數指向的變數中。

若要完成記錄記錄複製,客戶端應該先使用 GetOverlappedResult 或其中一個同步 處理等候函式,將其執行與重疊 I/O 作業延遲完成同步處理。 如需詳細資訊,請參閱 同步處理和重疊的輸入和輸出

ReadPreviousLogRestartArea 以異步方式完成之後,會從磁碟讀取要求的重新啟動區域,但有效的指標不會放在 *ppvRestartBuffer 中。

若要取得有效的指標,客戶端必須再次呼叫 ReadPreviousLogRestartArea

注意 常見的記錄檔系統 (CLFS) 讀取內容不是安全線程。 一次不應該由一個以上的線程使用。

CLFS 讀取內容一次不應該傳遞至多個異步讀取,否則函式會因為ERROR_READ而失敗。

 

規格需求

需求
最低支援的用戶端 Windows Vista [僅限傳統型應用程式]
最低支援的伺服器 Windows Server 2003 R2 [僅限桌面應用程式]
目標平台 Windows
標頭 clfsw32.h
程式庫 Clfsw32.lib
Dll Clfsw32.dll

另請參閱

CLFS_LSN

一般記錄檔系統函式

CreateLogFile

重疊

ReadLogRestartArea

同步處理和重疊的輸入和輸出