Fungsi RxLogEventWithBufferDirect (rxprocs.h)
RxLogEventWithBufferDirect mengalokasikan struktur log kesalahan I/O, mengisinya dengan informasi, dan menulis entri ke log kesalahan I/O.
Sintaks
void RxLogEventWithBufferDirect(
IN PVOID DeviceOrDriverObject,
[in] IN PUNICODE_STRING OriginatorId,
[in] IN ULONG EventId,
[in] IN NTSTATUS Status,
[in] IN PVOID DataBuffer,
[in] IN USHORT DataBufferLength,
[in] IN ULONG LineNumber
);
Parameter
DeviceOrDriverObject
Penunjuk ke objek perangkat RDBSS.
[in] OriginatorId
String yang menunjukkan pemanggil menghasilkan kesalahan.
[in] EventId
Nilai yang menunjukkan kode log kesalahan I/O yang berbeda dari nilai NTSTATUS yang dikembalikan oleh rutinitas. Nilai kode log kesalahan I/O legal ditentukan dalam file header ntiolog.h yang disertakan dengan Microsoft Windows SDK dan Visual Studio.
[in] Status
Nilai yang menunjukkan kode status rutinitas yang menunjukkan kegagalan.
[in] DataBuffer
Penunjuk ke buffer data untuk ditambahkan ke struktur log kesalahan I/O.
[in] DataBufferLength
Panjang buffer data yang akan ditambahkan ke struktur log kesalahan I/O.
[in] LineNumber
Nomor baris dalam file kode sumber tempat kegagalan ini terjadi.
Nilai kembali
Tidak ada
Keterangan
RxLogEventDirect secara internal memanggil rutinitas RxLogEventWithAnnotation untuk membuat dan menulis entri log yang melewati parameter Status dan LineNumber sebagai parameter Anotasi ke RxLogEventWithAnnotation.
Ukuran entri log kesalahan I/O dibatasi hingga panjang 255 karakter. Jadi, jika panjang gabungan parameter EventId, DataBuffer, dan Anotasi ditambah ukuran bagian tetap dari entri log kesalahan I/O melebihi 255, maka tidak ada entri log kesalahan I/O yang akan dibuat.
Rutinitas RxLogEventWithAnnotation perlu mengalokasikan memori untuk membuat entri log kesalahan I/O . Akibatnya, RxLogEventWithBufferDirect dapat diam-diam gagal jika alokasi memori gagal.
Persyaratan
Persyaratan | Nilai |
---|---|
Target Platform | Desktop |
Header | rxprocs.h (termasuk Rxprocs.h, Rxstruc.h) |
IRQL | <= APC_LEVEL |