Partager via


ReadEventLogA, fonction (winbase.h)

Lit le nombre spécifié d’entrées dans le journal des événements spécifié. La fonction peut être utilisée pour lire les entrées de journal dans un ordre chronologique ou chronologique inverse.

Syntaxe

BOOL ReadEventLogA(
  [in]  HANDLE hEventLog,
  [in]  DWORD  dwReadFlags,
  [in]  DWORD  dwRecordOffset,
  [out] LPVOID lpBuffer,
  [in]  DWORD  nNumberOfBytesToRead,
  [out] DWORD  *pnBytesRead,
  [out] DWORD  *pnMinNumberOfBytesNeeded
);

Paramètres

[in] hEventLog

Handle du journal des événements à lire. La fonction OpenEventLog retourne ce handle.

[in] dwReadFlags

Utilisez les valeurs d’indicateur suivantes pour indiquer comment lire le fichier journal. Ce paramètre doit inclure l’une des valeurs suivantes (les indicateurs s’excluent mutuellement).

Valeur Signification
EVENTLOG_SEEK_READ
0x0002
Commencez la lecture à partir de l’enregistrement spécifié dans le paramètre dwRecordOffset .

Cette option peut ne pas fonctionner avec des fichiers journaux volumineux si la fonction ne peut pas déterminer la taille du fichier journal. Pour plus d’informations, consultez l’article 177199 de la Base de connaissances.

EVENTLOG_SEQUENTIAL_READ
0x0001
Lisez les enregistrements de manière séquentielle.

S’il s’agit de la première opération de lecture, les indicateurs EVENTLOG_FORWARDS_READ EVENTLOG_BACKWARDS_READ déterminent l’enregistrement à lire en premier.

 

Vous devez spécifier l’un des indicateurs suivants pour indiquer la direction des opérations de lecture successives (les indicateurs s’excluent mutuellement).

Valeur Signification
EVENTLOG_FORWARDS_READ
0x0004
Le journal est lu dans l’ordre chronologique (du plus ancien au plus récent).

Valeur par défaut.

EVENTLOG_BACKWARDS_READ
0x0008
Le journal est lu dans l’ordre chronologique inverse (du plus récent au plus ancien).

[in] dwRecordOffset

Numéro d’enregistrement de l’entrée de journal à laquelle l’opération de lecture doit démarrer. Ce paramètre est ignoré, sauf si dwReadFlags inclut l’indicateur EVENTLOG_SEEK_READ .

[out] lpBuffer

Mémoire tampon allouée par l’application qui recevra une ou plusieurs structures EVENTLOGRECORD . Ce paramètre ne peut pas être NULL, même si le paramètre nNumberOfBytesToRead est égal à zéro.

La taille maximale de cette mémoire tampon est 0x7ffff octets.

[in] nNumberOfBytesToRead

Taille de la mémoire tampon lpBuffer , en octets. Cette fonction lit autant d’entrées de journal que la mémoire tampon ; la fonction ne retourne pas d’entrées partielles.

[out] pnBytesRead

Pointeur vers une variable qui reçoit le nombre d’octets lus par la fonction.

[out] pnMinNumberOfBytesNeeded

Pointeur vers une variable qui reçoit la taille requise de la mémoire tampon lpBuffer . Cette valeur est valide uniquement si cette fonction retourne zéro et que GetLastError retourne ERROR_INSUFFICIENT_BUFFER.

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.

Remarques

Lorsque cette fonction retourne correctement, la position de lecture dans le journal des événements est ajustée par le nombre d’enregistrements lus.

Note Le nom de fichier configuré pour cette source peut également être le nom de fichier configuré pour d’autres sources (plusieurs sources peuvent exister en tant que sous-clés sous un seul journal). Par conséquent, cette fonction peut retourner des événements qui ont été enregistrés par plusieurs sources.
 

Exemples

Pour obtenir un exemple, consultez Interrogation des informations sur les événements.

Notes

L’en-tête winbase.h définit ReadEventLog comme alias qui sélectionne automatiquement la version ANSI ou Unicode de cette fonction en fonction de la définition de la constante de préprocesseur UNICODE. La combinaison de l’utilisation de l’alias neutre en encodage avec du code qui n’est pas neutre en encodage peut entraîner des incompatibilités qui entraînent des erreurs de compilation ou d’exécution. Pour plus d’informations, consultez Conventions pour les prototypes de fonction.

Configuration requise

Condition requise Valeur
Client minimal pris en charge Windows 2000 Professionnel [applications de bureau uniquement]
Serveur minimal pris en charge Windows 2000 Server [applications de bureau uniquement]
Plateforme cible Windows
En-tête winbase.h (inclure Windows.h)
Bibliothèque Advapi32.lib
DLL Advapi32.dll
Ensemble d’API ext-ms-win-advapi32-eventlog-ansi-l1-1-0 (introduit dans Windows 10, version 10.0.10240)

Voir aussi

ClearEventLog

CloseEventLog

EVENTLOGRECORD

Fonctions de journalisation des événements

OpenEventLog

ReportEvent