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 |