Função RxLogEventWithBufferDirect (rxprocs.h)
RxLogEventWithBufferDirect aloca uma estrutura de log de erros de E/S, preenche-a com informações e grava a entrada no log de erros de E/S.
Sintaxe
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
);
Parâmetros
DeviceOrDriverObject
Um ponteiro para o objeto de dispositivo RDBSS.
[in] OriginatorId
A cadeia de caracteres que indica o chamador que está gerando o erro.
[in] EventId
O valor que indica o código de log de erros de E/S que é diferente de um valor NTSTATUS retornado por uma rotina. Os valores legais do código do log de erros de E/S são definidos no arquivo de cabeçalho ntiolog.h do incluído no SDK do Microsoft Windows e no Visual Studio.
[in] Status
O valor que indica o código de status de uma rotina que indica uma falha.
[in] DataBuffer
Um ponteiro para um buffer de dados a ser adicionado à estrutura de log de erros de E/S.
[in] DataBufferLength
O comprimento do buffer de dados a ser adicionado à estrutura de log de erros de E/S.
[in] LineNumber
O número de linha no arquivo de código-fonte em que essa falha ocorreu.
Valor de retorno
Nenhum
Observações
RxLogEventDirect chama internamente a rotina de RxLogEventWithAnnotation para criar e gravar a entrada de log passando os parâmetros Status e LineNumber como o parâmetro Annotations para RxLogEventWithAnnotation.
O tamanho da entrada do log de erros de E/S é limitado a um comprimento de 255 caracteres. Portanto, se o comprimento combinado do EventId, DataBuffere Anotações parâmetros mais o tamanho da parte fixa da entrada de log de erros de E/S exceder 255, nenhuma entrada de log de erros de E/S será criada.
A rotina RxLogEventWithAnnotation precisa alocar memória para criar a entrada de log de erros de E/S. Consequentemente, RxLogEventWithBufferDirect poderá falhar silenciosamente se a alocação de memória falhar.
Requisitos
Requisito | Valor |
---|---|
da Plataforma de Destino | Área de trabalho |
cabeçalho | rxprocs.h (include Rxprocs.h, Rxstruc.h) |
IRQL | <= APC_LEVEL |