Share via


ILog::ReadRecordPrefix-Methode (txlogpub.h)

Liest einen anfänglichen Teil eines Datensatzes aus dem Protokoll.

Syntax

HRESULT ReadRecordPrefix(
  [in]      LSN   lsnToRead,
  [in, out] LSN   *plsnPrev,
  [in, out] LSN   *plsnNext,
  [out]     BYTE  *pbData,
  [in, out] ULONG *pcbData,
  [out]     ULONG *pcbRecord
);

Parameter

[in] lsnToRead

Die LSN des zu lesenden Datensatzes.

[in, out] plsnPrev

Ein Zeiger auf die LSN des vorherigen Datensatzes (der Datensatz, der gelesen werden soll, unmittelbar vor dem Datensatz). Sie können NULL übergeben, wenn die LSN des vorherigen Datensatzes nicht benötigt wird. Dieser Parameter ist 0, wenn kein vorheriger Datensatz im Protokoll vorhanden ist oder ein Fehler auftritt.

[in, out] plsnNext

Ein Zeiger auf die LSN des nächsten Datensatzes (der Datensatz, der unmittelbar auf den zu lesenden Datensatz folgt). Sie können NULL übergeben, wenn die LSN des nächsten Datensatzes nicht benötigt wird. Dieser Parameter ist MAXLSN (0x7FFFFFFFFFFFFFFF), wenn kein nächster Datensatz im Protokoll vorhanden ist. Dieser Parameter ist 0, wenn ein Fehler auftritt.

[out] pbData

Ein Zeiger auf einen Puffer, in den die Datensatzdaten gelesen werden sollen.

[in, out] pcbData

Ein Zeiger auf eine Variable, die die Größe des Puffers bei der Eingabe in Byte enthält und die Größe in Byte der bei der Rückgabe gelesenen Datensatzdaten enthält.

[out] pcbRecord

Ein Zeiger auf eine Variable, die bei der Rückgabe die Größe des gesamten Datensatzes in Byte enthält. Sie können NULL übergeben, wenn die Größe des gesamten Datensatzes nicht benötigt wird.

Rückgabewert

Diese Methode kann die folgenden Werte sowie andere HRESULT-Werte zurückgeben.

Rückgabecode BESCHREIBUNG
S_OK
Der Datensatz wurde erfolgreich aus dem Protokoll gelesen.
XACT_E_INVALIDLSN
lsnToRead liegt außerhalb der aktuellen Grenzwerte des Protokolls. Siehe ILog::GetLogLimits.
E_INVALIDARG
lsnToRead liegt innerhalb der aktuellen Grenzwerte des Protokolls, ist aber nicht die LSN eines Datensatzes im Protokoll.

Hinweise

Obwohl Datensätze, die mithilfe von ILog::AppendRecord an das Protokoll angefügt werden, aus mehreren BLOBs verkettet werden können, gibt ReadRecordPrefix den Datensatz als einzelnes undurchsichtiges Blob mit Daten zurück. ILog bietet keine Methode zum Extrahieren einzelner BLOBs aus dem Datensatz. Es liegt in der Verantwortung des Aufrufers, die Daten in Datensätzen zu analysieren, die von ReadRecordPrefix zurückgegeben werden.

Anforderungen

   
Unterstützte Mindestversion (Client) Windows XP [nur Desktop-Apps]
Unterstützte Mindestversion (Server) Windows Server 2003 [nur Desktop-Apps]
Zielplattform Windows
Kopfzeile txlogpub.h

Weitere Informationen

Ilog