Função ClfsMgmtSetLogFileSize (wdm.h)
A rotina de ClfsMgmtSetLogFileSize adiciona contêineres a um log ou exclui contêineres de um log.
Sintaxe
CLFSUSER_API NTSTATUS ClfsMgmtSetLogFileSize(
[in] PLOG_FILE_OBJECT LogFile,
[in] PULONGLONG NewSizeInContainers,
[out] PULONGLONG ResultingSizeInContainers,
[in, optional] PCLFS_SET_LOG_SIZE_COMPLETE_CALLBACK CompletionRoutine,
[in, optional] PVOID CompletionRoutineData
);
Parâmetros
[in] LogFile
Um ponteiro para uma estrutura LOG_FILE_OBJECT que representa o log CLFS ou um fluxo dentro do log, ao qual os contêineres estão sendo adicionados ou excluídos.
[in] NewSizeInContainers
Um ponteiro para o tamanho do log solicitado. O chamador define esse parâmetro como um dos valores a seguir.
Valor | Significado |
---|---|
0 |
Impor a política de tamanho mínimo. Para obter mais informações sobre essa política, consulte ClfsMgmtInstallPolicy.
Se uma política de tamanho mínimo não estiver instalada, ocorrerá um destes procedimentos:
|
1 | Valor inválido. A chamada falha e retorna STATUS_INVALID_VALUE. |
2 a 1023 |
O tamanho desejado do log, expresso como o número de contêineres.
Se esse número for menor que o número mínimo de contêineres especificado pela política instalada, a chamada falhará com ERROR_COULD_NOT_RESIZE_LOG. Se esse número for maior que o número máximo de contêineres especificado pela política instalada, o log se expandirá apenas no que diz respeito ao número máximo de contêineres especificado pela política e a chamada terá êxito sem erros. |
1024 para MAXULONGLONG |
Se nenhuma política de tamanho máximo estiver instalada, a chamada falhará e retornará ERROR_LOG_POLICY_CONFLICT.
Se uma política de tamanho máximo for instalada, o log se expandirá para o número máximo de contêineres especificado pela política de tamanho máximo e a chamada terá êxito sem erros. |
Para determinar o tamanho real do log, que pode ser diferente do tamanho solicitado, use o parâmetro ResultingSizeInContainers.
[out] ResultingSizeInContainers
Um ponteiro para o tamanho de log resultante. Se bem-sucedida, a rotina grava o tamanho real do log, expresso como o número de contêineres no log, no local apontado por esse parâmetro.
[in, optional] CompletionRoutine
Não usado. Definido como NULL.
[in, optional] CompletionRoutineData
Não usado. Definido como NULL.
Valor de retorno
A rotina de ClfsMgmtSetLogFileSize retorna um dos seguintes valores NTSTATUS:
Código de retorno | Descrição |
---|---|
|
O tamanho do arquivo de log foi definido. O parâmetro ResultingSizeInContainers contém o tamanho atual do log. |
|
O gerenciamento CLFS não pôde definir o tamanho do arquivo de log. |
|
O valor do parâmetro LogFile é NULL ou o conteúdo do parâmetro NewSizeInContainers é 1. |
|
O valor do parâmetro NewSizeInContainers é NULL. |
|
Há um conflito entre o tamanho máximo e as políticas de tamanho mínimo para o log. |
|
O gerenciamento CLFS não pôde excluir contêineres suficientes para alcançar NewSizeInContainers. |
|
O gerenciamento do CLFS não pôde adicionar contêineres suficientes ao log para acessar NewSizeInContainers. Isso pode ocorrer devido a um conflito com uma política definida pelo cliente. |
Essa rotina também pode retornar outros NTSTATUS Values.
Observações
A rotina de ClfsMgmtSetLogFileSize do normalmente é usada somente quando um cliente é iniciado ou interrompido. Não chame a rotina de ClfsMgmtSetLogFileSize de dentro de sua função de ClfsAdvanceTailCallback de.
Requisitos
Requisito | Valor |
---|---|
de cliente com suporte mínimo | Disponível a partir do Windows Server 2003 R2 e do Windows Vista. |
da Plataforma de Destino | Área de trabalho |
cabeçalho | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
biblioteca | Clfs.lib |
de DLL | Clfs.sys |
IRQL | <= APC_LEVEL |