Funzione ClfsMgmtSetLogFileSize (wdm.h)
La routine ClfsMgmtSetLogFileSize aggiunge contenitori a un log o elimina i contenitori da un log.
Sintassi
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
);
Parametri
[in] LogFile
Puntatore a una struttura LOG_FILE_OBJECT che rappresenta il log CLFS o un flusso all'interno del log, a cui vengono aggiunti o eliminati i contenitori.
[in] NewSizeInContainers
Puntatore alla dimensione del log richiesta. Il chiamante imposta questo parametro su uno dei valori seguenti.
Valore | Significato |
---|---|
0 |
Applicare i criteri di dimensione minima. Per altre informazioni su questo criterio, vedere ClfsMgmtInstallPolicy.
Se non è installato un criterio di dimensione minima, si verifica uno dei seguenti:
|
1 | Valore non valido. La chiamata ha esito negativo e restituisce STATUS_INVALID_VALUE. |
da 2 a 1023 |
Dimensione desiderata del log, espressa come numero di contenitori.
Se questo numero è inferiore al numero minimo di contenitori specificato dai criteri installati, la chiamata ha esito negativo con ERROR_COULD_NOT_RESIZE_LOG. Se questo numero è maggiore del numero massimo di contenitori specificato dai criteri installati, il log si espande solo per quanto riguarda il numero massimo di contenitori specificato dai criteri e la chiamata ha esito positivo senza errori. |
Da 1024 a MAXULONGLONG |
Se non è installato alcun criterio di dimensione massima, la chiamata ha esito negativo e restituisce ERROR_LOG_POLICY_CONFLICT.
Se viene installato un criterio di dimensione massima, il log si espande fino al numero massimo di contenitori specificato dai criteri di dimensione massima e la chiamata ha esito positivo senza errori. |
Per determinare le dimensioni effettive del log, che potrebbero essere diverse dalle dimensioni richieste, usare il parametro ResultingSizeInContainers .
[out] ResultingSizeInContainers
Puntatore alla dimensione del log risultante. In caso di esito positivo, la routine scrive le dimensioni effettive del log, espresse come numero di contenitori nel log, nella posizione a cui punta questo parametro.
[in, optional] CompletionRoutine
Non usato. Impostata su NULL.
[in, optional] CompletionRoutineData
Non usato. Impostata su NULL.
Valore restituito
La routine ClfsMgmtSetLogFileSize restituisce uno dei valori NTSTATUS seguenti:
Codice restituito | Descrizione |
---|---|
|
Le dimensioni del file di log sono state impostate. Il parametro ResultingSizeInContainers contiene le dimensioni correnti del log. |
|
La gestione CLFS non è stata in grado di impostare le dimensioni del file di log. |
|
Il valore del parametro LogFile è NULL oppure il contenuto del parametro NewSizeInContainers è 1. |
|
Il valore del parametro NewSizeInContainers è NULL. |
|
Esiste un conflitto tra le dimensioni massime e i criteri di dimensione minima per il log. |
|
La gestione CLFS non è stata in grado di eliminare contenitori sufficienti per raggiungere NewSizeInContainers. |
|
La gestione CLFS non è stata in grado di aggiungere contenitori sufficienti al log per raggiungere NewSizeInContainers. Ciò potrebbe essere dovuto a un conflitto con un criterio impostato dal client. |
Questa routine può restituire anche altri valori NTSTATUS.
Commenti
La routine ClfsMgmtSetLogFileSize viene in genere utilizzata solo all'avvio o all'arresto di un client. Non chiamare la routine ClfsMgmtSetLogFileSize dall'interno della funzione ClfsAdvanceTailCallback .
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile a partire da Windows Server 2003 R2 e Windows Vista. |
Piattaforma di destinazione | Desktop |
Intestazione | wdm.h (include Wdm.h, Ntddk.h, Ntifs.h) |
Libreria | Clfs.lib |
DLL | Clfs.sys |
IRQL | <= APC_LEVEL |