Función ClfsReadLogRecord (wdm.h)
La rutina ClfsReadLogRecord lee un registro de destino en una secuencia CLFS y devuelve un contexto de lectura que el autor de la llamada puede usar para leer los registros anteriores o seguirlos en la secuencia.
Sintaxis
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
Puntero a un contexto opaco que representa un área de serialización. El autor de la llamada obtuvo previamente este puntero llamando a ClfsCreateMarshallingArea.
[in, out] plsnFirst
Puntero a una estructura de CLFS_LSN que proporciona el LSN del registro de destino en el registro.
[in] peContextMode
Valor de la enumeración CLFS_CONTEXT_MODE que especifica el modo inicial (ClfsContextUndoNext, ClfsContextPrevious o ClfsContextForward) del contexto de lectura devuelto en ppvReadContext.
[out] ppvReadBuffer
Puntero a una variable que recibe un puntero al búfer de datos del registro de destino.
[out] pcbReadBuffer
Puntero a una variable con tipo ULONG que recibe el tamaño, en bytes, del búfer al que apunta *ppvReadBuffer. Esta es la longitud del búfer de datos del registro de destino.
[out] peRecordType
Puntero a una variable de tipo CLFS_RECORD_TYPE que recibe uno de los valores siguientes.
Valor | Significado |
---|---|
ClfsDataRecord | El registro de destino es un registro de datos. |
ClfsRestartRecord | El registro de destino es un registro de reinicio. |
[out] plsnUndoNext
Puntero a una estructura de CLFS_LSN que recibe el LSN de deshacer siguiente del registro de destino.
[out] plsnPrevious
Puntero a una estructura CLFS_LSN que recibe el LSN anterior del registro de destino.
[out] ppvReadContext
Puntero a una variable que recibe un puntero a un contexto de lectura opaco. El cliente pasa repetidamente este contexto a ClfsReadNextLogRecord para leer los registros restantes de una secuencia. Una vez que el cliente haya leído todos los registros de la secuencia, llama a ClfsTerminateReadLog para liberar el contexto de lectura.
Valor devuelto
ClfsReadLogRecord devuelve STATUS_SUCCESS si se realiza correctamente; de lo contrario, devuelve uno de los códigos de error definidos en Ntstatus.h.
Comentarios
Debe llamar a ClfsTerminateReadLog cuando haya terminado de usar el contexto de lectura para evitar una pérdida de memoria.
Para obtener una explicación de los conceptos y la terminología de CLFS, consulte Common Log File System.
Para obtener información sobre cómo leer registros de secuencias CLFS, vea Lectura de registros de datos de un Stream CLFS y Lectura de registros de reinicio desde un Stream CLFS.
Los contextos de lectura no son seguros para subprocesos. Los clientes son responsables de serializar el acceso a contextos de lectura.
Requisitos
Requisito | Value |
---|---|
Cliente mínimo compatible | Disponible en Windows Server 2003 R2, Windows Vista y versiones posteriores de Windows. |
Plataforma de destino | Escritorio |
Encabezado | wdm.h (incluya Wdm.h) |
Library | Clfs.lib |
Archivo DLL | Clfs.sys |
IRQL | <= APC_LEVEL |