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 讀取內容一次不應該傳遞至多個異步讀取,否則函式會因為ERROR_READ而失敗。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | Windows Vista [僅限傳統型應用程式] |
最低支援的伺服器 | Windows Server 2003 R2 [僅限桌面應用程式] |
目標平台 | Windows |
標頭 | clfsw32.h |
程式庫 | Clfsw32.lib |
Dll | Clfsw32.dll |