Compartilhar via


Função ClfsReadLogRecord (wdm.h)

O ClfsReadLogRecord rotina lê um registro de destino em um fluxo CLFS e retorna um contexto de leitura que o chamador pode usar para ler os registros anteriores ou segui-lo no fluxo.

Sintaxe

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

Parâmetros

[in] pvMarshalContext

Um ponteiro para um contexto opaco que representa uma área de marshalling. O chamador obteve esse ponteiro anteriormente chamando ClfsCreateMarshallingArea.

[in, out] plsnFirst

Um ponteiro para uma estrutura de CLFS_LSN que fornece o LSN do registro de destino no log.

[in] peContextMode

Um valor da enumeração CLFS_CONTEXT_MODE que especifica o modo inicial (ClfsContextUndoNext, ClfsContextPrevious ou ClfsContextForward) do contexto de leitura retornado em ppvReadContext.

[out] ppvReadBuffer

Um ponteiro para uma variável que recebe um ponteiro para o buffer de dados do registro de destino.

[out] pcbReadBuffer

Um ponteiro para uma variável do tipo ULONG que recebe o tamanho, em bytes, do buffer apontado por *ppvReadBuffer. Esse é o comprimento do buffer de dados do registro de destino.

[out] peRecordType

Um ponteiro para uma variável do tipo CLFS_RECORD_TYPE que recebe um dos valores a seguir.

Valor Significado
ClfsDataRecord O registro de destino é um registro de dados.
ClfsRestartRecord O registro de destino é um registro de reinicialização.

[out] plsnUndoNext

Um ponteiro para uma estrutura CLFS_LSN que recebe o LSN de desfazer do registro de destino.

[out] plsnPrevious

Um ponteiro para uma estrutura CLFS_LSN que recebe o LSN anterior do registro de destino.

[out] ppvReadContext

Um ponteiro para uma variável que recebe um ponteiro para um contexto de leitura opaco. O cliente passa repetidamente esse contexto para ClfsReadNextLogRecord para ler os registros restantes em uma sequência. Depois que o cliente ler todos os registros na sequência, ele chamará ClfsTerminateReadLog para liberar o contexto de leitura.

Valor de retorno

ClfsReadLogRecord retornará STATUS_SUCCESS se tiver êxito; caso contrário, ele retorna um dos códigos de erro definidos em Ntstatus.h.

Observações

Você deve chamar ClfsTerminateReadLog quando terminar de usar o contexto de leitura para evitar um vazamento de memória.

Para obter uma explicação dos conceitos e terminologia do CLFS, consulte Common Log File System.

Para obter informações sobre como ler registros de fluxos CLFS, consulte Lendo registros de dados de um de fluxo CLFS e lendo registros de reinicialização de um fluxo CLFS.

Os contextos de leitura não são thread-safe. Os clientes são responsáveis por serializar o acesso a contextos de leitura.

Requisitos

Requisito Valor
de cliente com suporte mínimo Disponível no Windows Server 2003 R2, Windows Vista e versões posteriores do Windows.
da Plataforma de Destino Área de trabalho
cabeçalho wdm.h (inclua Wdm.h)
biblioteca Clfs.lib
de DLL Clfs.sys
IRQL <= APC_LEVEL

Consulte também

ClfsReadNextLogRecord

ClfsTerminateReadLog