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 ottenuto in precedenza questo puntatore chiamando ClfsCreateLogFile.

[in] pcbContainer

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

  • Se il log non dispone attualmente di contenitori, il chiamante fornisce un numero intero positivo che corrisponde alla dimensione richiesta, in byte, del nuovo contenitore. CLFS crea un contenitore con dimensioni richieste arrotondate per un multiplo di 512 KB (per un log dedicato) o 1 MB (per un log multiplexed).
  • Se il log ha attualmente almeno un contenitore e questo parametro è il puntatore null 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 ha attualmente almeno un contenitore e questo parametro è un puntatore valido, il chiamante fornisce un numero intero positivo che corrisponde alle dimensioni richieste, 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 con multiplexing). 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 la dimensione arrotondata è inferiore alla dimensione 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.

Osservazioni

Un contenitore è un extent contiguo nell'archiviazione stabile. Ad esempio, un contenitore potrebbe 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 di 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.

Fabbisogno

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

Vedere anche

clfsAddLogContainerSet

ClfsRemoveLogContainer