Partager via


Fonction CreateLogContainerScanContext (clfsw32.h)

Crée un contexte d’analyse à utiliser avec ScanLogContainers pour énumérer tous les conteneurs de journaux associés à un journal, puis effectue la première analyse.

Syntaxe

CLFSUSER_API BOOL CreateLogContainerScanContext(
  [in]                HANDLE             hLog,
  [in]                ULONG              cFromContainer,
  [in]                ULONG              cContainers,
  [in]                CLFS_SCAN_MODE     eScanMode,
  [in, out]           PCLFS_SCAN_CONTEXT pcxScan,
  [in, out, optional] LPOVERLAPPED       pOverlapped
);

Paramètres

[in] hLog

Handle du journal obtenu à partir de CreateLogFile avec des autorisations pour analyser les conteneurs de journaux.

Le fichier peut être un journal dédié ou multiplexé.

[in] cFromContainer

Conteneur dans lequel l’analyse doit être démarrée.

Ce paramètre est un nombre ordinal relatif au nombre de conteneurs dans le journal.

[in] cContainers

Nombre de structures CLFS_CONTAINER_INFORMATION que CreateLogContainerScanContext doit allouer.

Ce nombre correspond au nombre de conteneurs analysés à chaque appel d’analyse afin que l’appelant sache que l’analyse est terminée lorsque le nombre de conteneurs retournés est inférieur à cette valeur.

À la sortie, un pointeur vers le tableau alloué par le système de structures CLFS_CONTAINER_INFORMATION est placé dans le membre pinfoContainer de la structure de CLFS_SCAN_CONTEXT allouée par le client. Ce membre est pointé vers le paramètre pcxScan (autrement dit, « pcxScan-pinfoContainer>[] »), et le nombre réel de structures dans le tableau est placé dans « pcxScan-cContainersReturned> ».

Le client doit appeler ScanLogContainers avec le paramètre eScanMode défini sur CLFS_SCAN_CLOSE afin qu’il puisse libérer ce tableau ; sinon, des fuites de mémoire se traduisent.

[in] eScanMode

Mode d’analyse des conteneurs.

Les conteneurs peuvent être analysés dans l’un des modes suivants.

Valeur Signification
CLFS_SCAN_INIT
Initialise ou réinitialise une analyse à partir du premier conteneur de la liste de conteneurs.

Ce mode initialise le contexte de conteneur et retourne le premier ensemble de descripteurs de conteneur spécifiés par cContainers .

CLFS_SCAN_FORWARD
Retourne le premier ensemble de conteneurs spécifiés par cContainers .
CLFS_SCAN_BACKWARD
Retourne le dernier ensemble de conteneurs spécifié par cContainers .

[in, out] pcxScan

Pointeur vers une structure de CLFS_SCAN_CONTEXT allouée par le client qui reçoit un contexte d’analyse qui peut être passé à la fonction ScanLogContainers lorsqu’un client analyse les conteneurs de journaux d’un journal dédié.

[in, out, optional] pOverlapped

Pointeur vers une structure CHEVAUCHEMENT requise pour une opération asynchrone.

Ce paramètre peut avoir la valeur NULL si aucune opération asynchrone n’est utilisée.

Valeur retournée

Si la fonction réussit, la valeur de retour est différente de zéro.

Si la fonction échoue, la valeur de retour est égale à zéro. Pour obtenir des informations détaillées sur l’erreur, appelez GetLastError.

La liste suivante identifie les codes d’erreur possibles :

Remarques

Après avoir terminé une analyse, le client doit à nouveau appeler ScanLogContainers avec le paramètre eScanMode défini sur CLFS_SCAN_CLOSE afin qu’il puisse libérer le tableau alloué par le système de structures CLFS_CONTAINER_INFORMATION ; sinon, des fuites de mémoire se traduisent.

Exemples

Pour obtenir un exemple qui utilise cette fonction, consultez Énumération de conteneurs de journaux.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows Vista [applications de bureau uniquement]
Serveur minimal pris en charge Windows Server 2003 R2 [applications de bureau uniquement]
Plateforme cible Windows
En-tête clfsw32.h
Bibliothèque Clfsw32.lib
DLL Clfsw32.dll

Voir aussi

CLFS_CONTAINER_INFORMATION

CLFS_SCAN_CONTEXT

CLFS_SCAN_MODE

Fonctions courantes du système de fichiers journaux

ScanLogContainers