Structure EVENTLOGRECORD (winnt.h)
Contient des informations sur un enregistrement d’événement retourné par la fonction ReadEventLog .
Syntaxe
typedef struct _EVENTLOGRECORD {
DWORD Length;
DWORD Reserved;
DWORD RecordNumber;
DWORD TimeGenerated;
DWORD TimeWritten;
DWORD EventID;
WORD EventType;
WORD NumStrings;
WORD EventCategory;
WORD ReservedFlags;
DWORD ClosingRecordNumber;
DWORD StringOffset;
DWORD UserSidLength;
DWORD UserSidOffset;
DWORD DataLength;
DWORD DataOffset;
} EVENTLOGRECORD, *PEVENTLOGRECORD;
Membres
Length
Taille de cet enregistrement d’événement, en octets. Notez que cette valeur est stockée aux deux extrémités de l’entrée pour faciliter le déplacement vers l’avant ou vers l’arrière dans le journal. La longueur inclut tous les octets de pavé insérés à la fin de l’enregistrement pour l’alignement DWORD .
Reserved
Valeur DWORD qui est toujours définie sur ELF_LOG_SIGNATURE (la valeur est 0x654c664c), qui est ASCII pour eLfL.
RecordNumber
Numéro de l’enregistrement. Cette valeur peut être utilisée avec l’indicateur EVENTLOG_SEEK_READ dans la fonction ReadEventLog pour commencer la lecture à un enregistrement spécifié. Pour plus d’informations, consultez Enregistrements du journal des événements.
TimeGenerated
Heure à laquelle cette entrée a été soumise. Ce temps est mesuré en nombre de secondes écoulées depuis 00 :00 :00 le 1er janvier 1970, heure universelle coordonnée.
TimeWritten
Heure à laquelle cette entrée a été reçue par le service à écrire dans le journal. Ce temps est mesuré en nombre de secondes écoulées depuis 00 :00 :00 le 1er janvier 1970, heure universelle coordonnée.
EventID
Identificateur de l'événement. La valeur est spécifique à la source d’événement pour l’événement et est utilisée avec le nom de la source pour rechercher une chaîne de description dans le fichier de message de la source d’événement. Pour plus d’informations, consultez Identificateurs d’événements.
EventType
Type de l'événement. Ce membre peut être l’une des valeurs suivantes.
Pour plus d’informations, consultez Types d’événements.
NumStrings
Nombre de chaînes présentes dans le journal (à la position indiquée par StringOffset). Ces chaînes sont fusionnées dans le message avant qu’il ne soit affiché à l’utilisateur.
EventCategory
Catégorie de cet événement. La signification de cette valeur dépend de la source d’événement. Pour plus d’informations, consultez Catégories d’événements.
ReservedFlags
Réservé.
ClosingRecordNumber
Réservé.
StringOffset
Décalage des chaînes de description dans cet enregistrement du journal des événements.
UserSidLength
Taille du membre UserSid , en octets. Cette valeur peut être égale à zéro si aucun identificateur de sécurité n’a été fourni.
UserSidOffset
Décalage de l’identificateur de sécurité (SID) dans cet enregistrement du journal des événements. Pour obtenir le nom d’utilisateur de ce SID, utilisez la fonction LookupAccountSid .
DataLength
Taille des données spécifiques à l’événement (à la position indiquée par DataOffset), en octets.
DataOffset
Décalage des informations spécifiques à l’événement dans cet enregistrement du journal des événements, en octets. Ces informations peuvent être spécifiques (un pilote de disque peut enregistrer le nombre de nouvelles tentatives, par exemple), suivies d’informations binaires spécifiques à l’événement journalisé et à la source qui a généré l’entrée.
Remarques
Les membres définis sont suivis des chaînes de remplacement du message identifié par l’identificateur d’événement, des informations binaires, de quelques octets de pavé pour s’assurer que l’entrée complète se trouve sur une limite DWORD et enfin de la longueur de l’entrée de journal à nouveau. Étant donné que les chaînes et les informations binaires peuvent être de n’importe quelle longueur, aucun membre de structure n’est défini pour les référencer. La déclaration de cette structure dans Winnt.h décrit ces membres comme suit :
// WCHAR SourceName[]
// WCHAR Computername[]
// SID UserSid
// WCHAR Strings[]
// BYTE Data[]
// CHAR Pad[]
// DWORD Length;
Le nom de la source est une chaîne de longueur variable qui spécifie le nom de la source d’événement. Le nom de l’ordinateur est le nom de l’ordinateur qui a généré l’événement. Il peut être suivi de quelques octets de remplissage afin que le SID utilisateur soit aligné sur une limite DWORD . Le SID utilisateur identifie l’utilisateur actif au moment où cet événement a été journalisé. Si UserSidLength est égal à zéro, ce champ peut être vide.
L’identificateur d’événement ainsi que le nom de la source et un identificateur de langue identifient une chaîne qui décrit l’événement plus en détail. Les chaînes sont utilisées comme chaînes de remplacement et sont fusionnées dans la chaîne de message pour créer un message complet. Les chaînes de message sont contenues dans un fichier de message spécifié dans l’entrée source dans le Registre. Pour obtenir la chaîne de message appropriée à partir du fichier de message, chargez le fichier de message avec la fonction LoadLibrary et utilisez la fonction FormatMessage .
Les informations binaires sont des informations spécifiques à l’événement. Il peut s’agir du contenu des registres du processeur lorsqu’un pilote de périphérique a reçu une erreur, d’un vidage d’un paquet non valide reçu du réseau, d’un vidage de toutes les structures d’un programme (lorsque la zone de données a été détectée comme étant endommagée), etc. Ces informations doivent être utiles au rédacteur du pilote de périphérique ou de l’application pour rechercher les bogues ou les interruptions non autorisées dans l’application.
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] |
En-tête | winnt.h (inclure Windows.h) |