RxLogEventDirect, fonction (rxprocs.h)
RxLogEventDirect est appelée pour consigner une erreur dans le journal des erreurs d’E/S.
Il est recommandé d’utiliser la macro RXLogEvent ou la macro RxLogFailure au lieu d’appeler directement cette routine.
Syntaxe
void RxLogEventDirect(
[in] IN PRDBSS_DEVICE_OBJECT DeviceObject,
[in] IN PUNICODE_STRING OriginatorId,
[in] IN ULONG EventId,
[in] IN NTSTATUS Status,
[in] IN ULONG Line
);
Paramètres
[in] DeviceObject
Pointeur vers l’objet d’appareil RDBSS.
[in] OriginatorId
Chaîne indiquant l’appelant générant l’erreur.
[in] EventId
Valeur indiquant la valeur du code du journal des erreurs d’E/S différente d’une valeur NTSTATUS retournée par une routine. Les valeurs de code du journal des erreurs d’E/S légales sont définies dans le fichier d’en-tête ntiolog.h inclus avec le Kit de développement logiciel (SDK) Microsoft Windows et Visual Studio.
[in] Status
Valeur indiquant le code d’état d’une routine indiquant un échec.
[in] Line
Numéro de ligne dans le fichier de code source où cet échec s’est produit.
Valeur de retour
Aucun
Remarques
RxLogEventDirect appelle en interne la routine RxLogEventWithAnnotation pour créer et écrire l’entrée de journal.
La taille d’entrée du journal des erreurs d’E/S est limitée à une longueur de 255 caractères. Par conséquent, si la longueur combinée du OriginatorId plus la taille de la partie fixe du journal des erreurs d’E/S dépasse 255, aucune entrée du journal des erreurs d’E/S n’est créée.
La routine RxLogEventWithAnnotation doit allouer de la mémoire pour créer l’entrée du journal des erreurs d’E/S. Par conséquent, RxLogEventDirect peut échouer en mode silencieux si l’allocation de mémoire échoue.
Exigences
Exigence | Valeur |
---|---|
plateforme cible | Bureau |
d’en-tête | rxprocs.h (include Rxprocs.h, Rxstruc.h) |
IRQL | <= APC_LEVEL |