Función ClfsMgmtHandleLogFileFull (wdm.h)
La rutina ClfsMgmtHandleLogFileFull intenta que haya más espacio disponible en un registro. Puede que haya más espacio disponible agregando contenedores al registro, o bien puede pedir a los clientes que muevan sus colas de registro.
Sintaxis
CLFSUSER_API NTSTATUS ClfsMgmtHandleLogFileFull(
[in] CLFS_MGMT_CLIENT Client
);
Parámetros
[in] Client
Cliente que solicita la administración de CLFS para que el espacio esté disponible en el registro. El valor de este parámetro debe ser la estructura CLFS_MGMT_CLIENT que se obtiene a través de una llamada a la rutina ClfsMgmtRegisterManagedClient .
Valor devuelto
La rutina ClfsMgmtHandleLogFileFull devuelve uno de los siguientes valores NTSTATUS:
Código devuelto | Descripción |
---|---|
STATUS_INVALID_PARAMETER | El cliente no administra un registro. |
STATUS_INVALID_PARAMETER_1 | El valor proporcionado para el parámetro Client era NULL o no representa un cliente válido. |
STATUS_LOG_FULL_HANDLER_IN_PROGRESS | La administración de CLFS ya está intentando resolver una condición completa del archivo de registro para este cliente. |
STATUS_UNSUCCESSFUL | La administración de CLFS no pudo procesar la solicitud. |
STATUS_PENDING | La administración de CLFS está procesando la solicitud para crear espacio en el registro. |
STATUS_SUCCESS | La cantidad de espacio solicitada está disponible en el registro. |
Comentarios
Para que haya más espacio disponible en el registro, la rutina ClfsMgmtHandleLogFileFull primero intenta agregar más contenedores al registro de acuerdo con la tasa de crecimiento, el nuevo tamaño de contenedor y las directivas de tamaño máximo. Si no se pueden agregar más contenedores, la rutina ClfsMgmtHandleLogFileFull intenta liberar espacio existente invocando una o varias funciones ClfsAdvanceTailCallback de los clientes.
Si la rutina ClfsMgmtHandleLogFileFull devuelve STATUS_PENDING, se llamará a la función ClfsLogGrowthCompleteCallback del cliente cuando se haya completado la solicitud para realizar espacio en el registro.
Si la rutina ClfsMgmtHandleLogFileFull devuelve STATUS_LOG_FULL_HANDLER_IN_PROGRESS, el cliente ya ha solicitado la administración de CLFS para controlar una condición completa del archivo de registro. La función ClfsLogGrowthCompleteCallback del cliente no se llamará por segunda vez.
Si la rutina ClfsMgmtHandleLogFileFull devuelve STATUS_SUCCESS, no se invocará la llamada completada sincrónicamente y la función ClfsLogGrowthCompleteCallback del cliente.
Si la rutina ClfsMgmtHandleLogFileFull devuelve STATUS_PENDING, la administración de CLFS se encuentra en proceso de intentar liberar espacio en el registro y llamará a la función ClfsLogGrowthCompleteCallback del cliente cuando se haya controlado la condición completa del archivo de registro. Si el registro está anclado, la administración de CLFS llamará a la función ClfsLogGrowthCompleteCallback del cliente con el parámetro LogIsPinned establecido en TRUE antes de que la rutina ClfsMgmtHandleLogFileFull devuelva STATUS_PENDING.
Es posible que se pueda llamar a la función ClfsLogGrowthCompleteCallback del cliente antes de que se devuelva la llamada a ClfsMgmtHandleLogFileFull .
Si la rutina ClfsMgmtHandleLogFileFull devuelve STATUS_PENDING, no debe llamar de nuevo a la rutina ClfsMgmtHandleLogFileFull para este cliente hasta que se haya llamado a la función ClfsLogGrowthCompleteCallback del cliente.
Requisitos
Requisito | Value |
---|---|
Plataforma de destino | Escritorio |
Encabezado | wdm.h (incluya Wdm.h, Ntddk.h, Ntifs.h) |
Library | Clfs.lib |
Archivo DLL | Clfs.sys |
IRQL | IRQL <= APC_LEVEL |