Condividi tramite


Funzione ClfsReadLogRecord (wdm.h)

La routine ClfsReadLogRecord legge un record di destinazione in un flusso CLFS e restituisce un contesto di lettura che il chiamante può usare per leggere i record precedenti o seguirlo nel flusso.

Sintassi

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
);

Parametri

[in] pvMarshalContext

Puntatore a un contesto opaco che rappresenta un'area di marshalling. Il chiamante ottenuto in precedenza questo puntatore chiamando ClfsCreateMarshallingArea.

[in, out] plsnFirst

Puntatore a una struttura CLFS_LSN che fornisce l'LSN del record di destinazione nel log.

[in] peContextMode

Valore dell'enumerazione CLFS_CONTEXT_MODE che specifica la modalità iniziale (ClfsContextUndoNext, ClfsContextPrevious o ClfsContextForward) del contesto di lettura restituito in ppvReadContext.

[out] ppvReadBuffer

Puntatore a una variabile che riceve un puntatore al buffer di dati del record di destinazione.

[out] pcbReadBuffer

Puntatore a una variabile tipizzata ULONG che riceve le dimensioni, in byte, del buffer a cui punta *ppvReadBuffer. Si tratta della lunghezza del buffer di dati del record di destinazione.

[out] peRecordType

Puntatore a una variabile di tipo CLFS_RECORD_TYPE che riceve uno dei valori seguenti.

Valore Significato
clfsDataRecord Il record di destinazione è un record di dati.
ClfsRestartRecord Il record di destinazione è un record di riavvio.

[out] plsnUndoNext

Puntatore a una struttura CLFS_LSN che riceve l'LSN di annullamento successivo del record di destinazione.

[out] plsnPrevious

Puntatore a una struttura CLFS_LSN che riceve l'LSN precedente del record di destinazione.

[out] ppvReadContext

Puntatore a una variabile che riceve un puntatore a un contesto di lettura opaco. Il client passa ripetutamente questo contesto a ClfsReadNextLogRecord per leggere i record rimanenti in una sequenza. Dopo che il client ha letto tutti i record nella sequenza, chiama ClfsTerminateReadLog per liberare il contesto di lettura.

Valore restituito

ClfsReadLogRecord restituisce STATUS_SUCCESS se ha esito positivo; in caso contrario, restituisce uno dei codici di errore definiti in Ntstatus.h.

Osservazioni

È necessario chiamare ClfsTerminateReadLog al termine dell'uso del contesto di lettura per evitare una perdita di memoria.

Per una spiegazione dei concetti e della terminologia di CLFS, vedere Common Log File System.

Per informazioni sulla lettura di record da flussi CLFS, vedere Lettura di record di dati da un flusso CLFS e lettura dei record di riavvio da un flusso CLFS.

I contesti di lettura non sono thread-safe. I client sono responsabili della serializzazione dell'accesso ai contesti di lettura.

Fabbisogno

Requisito Valore
client minimo supportato Disponibile in Windows Server 2003 R2, Windows Vista e versioni successive di Windows.
piattaforma di destinazione Desktop
intestazione wdm.h (include Wdm.h)
libreria Clfs.lib
dll Clfs.sys
IRQL <= APC_LEVEL

Vedere anche

ClfsReadNextLogRecord

ClfsTerminateReadLog