RxLogEventWithAnnotation-Funktion (rxprocs.h)
RxLogEventWithAnnotation ordnet eine E/A-Fehlerprotokollstruktur zu, füllt sie mit Informationen und schreibt den Eintrag in das E/A-Fehlerprotokoll.
Syntax
void RxLogEventWithAnnotation(
[in] IN PRDBSS_DEVICE_OBJECT DeviceObject,
IN ULONG EventId,
IN NTSTATUS Status,
IN PVOID DataBuffer,
IN USHORT DataBufferLength,
IN PUNICODE_STRING Annotation,
[in] IN ULONG AnnotationCount
);
Parameter
[in] DeviceObject
Ein Zeiger auf das RDBSS-Geräteobjekt.
EventId
Der Wert, der den E/A-Fehlerprotokollcode angibt, der sich von einem NTSTATUS-Wert unterscheidet, der von einer Routine zurückgegeben wird. Die Codewerte des E/A-Fehlerprotokolls sind in der Headerdatei ntiolog.h definiert, die im Microsoft Windows SDK und Visual Studio enthalten ist.
Status
Der Wert, der den status Code einer Routine angibt, die einen Fehler angibt.
DataBuffer
Ein Zeiger auf einen Rohdatenpuffer, der der E/A-Fehlerprotokollstruktur hinzugefügt werden soll.
DataBufferLength
Die Länge des Rohdatenpuffers, der der E/A-Fehlerprotokollstruktur hinzugefügt werden soll.
Annotation
Ein Zeiger auf alle Anmerkungszeichenfolgen, die der E/A-Fehlerprotokollstruktur hinzugefügt werden sollen.
[in] AnnotationCount
Die Anzahl der Anmerkungszeichenfolgen, die der E/A-Fehlerprotokollstruktur hinzugefügt werden sollen.
Rückgabewert
Keine
Bemerkungen
Ein Netzwerk-Mini-Redirector ruft RxLogEventWithAnnotation auf, um einen E/A-Fehler zu protokollieren.
Die Größe des E/A-Fehlerprotokolleintrags ist auf eine Länge von 255 Zeichen beschränkt. Wenn also die kombinierte Länge der Parameter Id, RawDataBuffer und Annotations sowie die Größe des festen Teils des E/A-Fehlerprotokolleintrags 255 überschreitet, schlägt RxLogEventWithAnnotation im Hintergrund fehl, und es wird kein E/A-Fehlerprotokolleintrag erstellt.
Die RxLogEventWithAnnotation-Routine muss Arbeitsspeicher zuweisen, um den E/A-Fehlerprotokolleintrag zu erstellen. Daher kann RxLogEventWithAnnotation automatisch fehlschlagen, wenn die Speicherbelegung fehlschlägt.
Anforderungen
Anforderung | Wert |
---|---|
Zielplattform | Desktop |
Kopfzeile | rxprocs.h (include Rxprocs.h, Rxstruc.h) |
IRQL | <= APC_LEVEL |