Condividi tramite


Funzione ClfsAddLogContainer (wdm.h)

La routine ClfsAddLogContainer aggiunge un contenitore a un log CLFS.

Sintassi

CLFSUSER_API NTSTATUS ClfsAddLogContainer(
  [in] PLOG_FILE_OBJECT plfoLog,
  [in] PULONGLONG       pcbContainer,
  [in] PUNICODE_STRING  puszContainerPath
);

Parametri

[in] plfoLog

Puntatore a una struttura LOG_FILE_OBJECT che rappresenta il log a cui verrà aggiunto il contenitore. Il chiamante ha ottenuto in precedenza questo puntatore chiamando ClfsCreateLogFile.

[in] pcbContainer

Puntatore a una variabile tipizzata ULONG. Il ruolo di questo parametro dipende dal fatto che il log abbia almeno un contenitore.

  • Se il log non ha attualmente contenitori, il chiamante fornisce un numero intero positivo che corrisponde alla dimensione richiesta, in byte, del nuovo contenitore. CLFS crea un contenitore che corrisponde alla dimensione richiesta arrotondata per un multiplo di 512 KB (per un log dedicato) o 1 MB (per un log multiplexed).
  • Se il log ha almeno un contenitore e questo parametro è il puntatore NULL , CLFS crea un nuovo contenitore con le stesse dimensioni dei contenitori esistenti. Tutti i contenitori in un log devono avere le stesse dimensioni.
  • Se il log dispone attualmente di almeno un contenitore e questo parametro è un puntatore valido, il chiamante fornisce un numero intero positivo che corrisponde alla dimensione richiesta, in byte, del nuovo contenitore. Le dimensioni richieste vengono arrotondate per un multiplo di 512 KB (per un log dedicato) o 1 MB (per un log multiplexed). Se la dimensione arrotondata è pari almeno alla dimensione del contenitore esistente, CLFS crea un nuovo contenitore con le stesse dimensioni dei contenitori esistenti. In caso di esito positivo, questo parametro riceve le dimensioni del contenitore esistenti. Se le dimensioni arrotondate sono inferiori a quelle del contenitore esistente, ClfsAddLogContainer ha esito negativo.

[in] puszContainerPath

Puntatore a una struttura UNICODE_STRING che fornisce il nome del percorso per il nuovo contenitore. Il percorso può essere assoluto o relativo al percorso del file di log di base. I percorsi relativi al file di log di base devono iniziare con CLFS_CONTAINER_RELATIVE_PREFIX, ovvero il valore letterale stringa (L"%BLF%\").

Valore restituito

ClfsAddLogContainer restituisce STATUS_SUCCESS se ha esito positivo; in caso contrario, restituisce uno dei codici di errore definiti in Ntstatus.h.

Commenti

Un contenitore è un extent contiguo nell'archiviazione stabile. Ad esempio, un contenitore può essere un file contiguo su disco. Un log è un set di contenitori insieme a un file di log di base. Per altre informazioni sui contenitori, vedere Archiviazione stabile CLFS.

Un contenitore specificato da un percorso relativo al file di log di base deve trovarsi nella stessa directory del file di log di base o di una sottodirectory del file di log di base. Le directory "." e ".." non sono consentite in un percorso relativo.

Un log può avere alcuni contenitori con percorsi assoluti e altri contenitori con percorsi relativi.

I contenitori vengono creati in modalità non compressa e vengono inizializzati con zeri.

Un log deve avere almeno due contenitori prima di poter eseguire qualsiasi I/O.

Per una spiegazione dei concetti e della terminologia di CLFS, vedere Common Log File System.

Requisiti

Requisito Valore
Client minimo supportato Disponibile in Windows Server 2003 R2, Windows Vista e versioni successive di Windows.
Piattaforma di destinazione Desktop
Intestazione wdm.h (include Wdm.h)
Libreria Clfs.lib
DLL Clfs.sys
IRQL <= APC_LEVEL

Vedi anche

ClfsAddLogContainerSet

ClfsRemoveLogContainer