Função ClfsReadLogRecord (wdm.h)
A rotina ClfsReadLogRecord 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-los 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 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 desfazer-próximo 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.
Retornar valor
ClfsReadLogRecord retornará STATUS_SUCCESS se for bem-sucedido; caso contrário, ele retornará um dos códigos de erro definidos em Ntstatus.h.
Comentários
Você deve chamar ClfsTerminateReadLog quando terminar de usar o contexto de leitura para evitar uma perda 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 Stream CLFS e Lendo registros de reinicialização de um Stream 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 |
---|---|
Cliente mínimo com suporte | Disponível no Windows Server 2003 R2, Windows Vista e versões posteriores do Windows. |
Plataforma de Destino | Área de Trabalho |
Cabeçalho | wdm.h (include Wdm.h) |
Biblioteca | Clfs.lib |
DLL | Clfs.sys |
IRQL | <= APC_LEVEL |