Função NdisWriteErrorLogEntry (ndis.h)
NdisWriteErrorLogEntry grava uma entrada no arquivo de log de erros de E/S do sistema.
Sintaxe
void NdisWriteErrorLogEntry(
[in] NDIS_HANDLE NdisAdapterHandle,
[in] NDIS_ERROR_CODE ErrorCode,
[in] ULONG NumberOfErrorValues,
...
);
Parâmetros
[in] NdisAdapterHandle
Especifica o identificador que representa a NIC que é a causa do erro de E/S a ser registrado. Esse identificador é um parâmetro de entrada para MiniportInitializeEx.
[in] ErrorCode
Especifica o código NDIS_ERROR_CODE_XXX que melhor descreve o erro de E/S como um dos seguintes valores:
NDIS_ERROR_CODE_RESOURCE_CONFLICT
O driver não pôde acessar um recurso necessário.
NDIS_ERROR_CODE_OUT_OF_RESOURCES
O hardware ou driver ficou sem recursos.
NDIS_ERROR_CODE_HARDWARE_FAILURE
O driver detectou um erro de hardware.
NDIS_ERROR_CODE_ADAPTER_NOT_FOUND
O adaptador de rede não foi encontrado.
NDIS_ERROR_CODE_INTERRUPT_CONNECT
Falha no registro de interrupção.
NDIS_ERROR_CODE_DRIVER_FAILURE
Ocorreu uma falha de driver que não corresponde a nenhuma das outras condições de erro.
NDIS_ERROR_CODE_BAD_VERSION
O driver detectou uma incompatibilidade de versão.
NDIS_ERROR_CODE_TIMEOUT
Um tempo limite expirou.
NDIS_ERROR_CODE_NETWORK_ADDRESS
Um endereço de rede é inválido.
NDIS_ERROR_CODE_UNSUPPORTED_CONFIGURATION
Não há suporte para a configuração do driver solicitado.
NDIS_ERROR_CODE_INVALID_VALUE_FROM_ADAPTER
O hardware do adaptador de rede forneceu um valor inválido.
NDIS_ERROR_CODE_MISSING_CONFIGURATION_PARAMETER
Um parâmetro de configuração de driver está ausente no registro.
NDIS_ERROR_CODE_BAD_IO_BASE_ADDRESS
O endereço base de E/S para o hardware do adaptador de rede é inválido.
NDIS_ERROR_CODE_RECEIVE_SPACE_SMALL
A quantidade de memória de buffer de recebimento disponível é muito pequena para receber dados.
NDIS_ERROR_CODE_ADAPTER_DISABLED
O hardware do adaptador de rede está desabilitado.
[in] NumberOfErrorValues
Especifica o número de valores ULONG a seguir esse parâmetro.
...
Especifica uma matriz de tamanho variável de ULONGs associada ao erro a ser registrado.
Retornar valor
Nenhum
Comentários
NdisWriteErrorLogEntry aloca um registro de log de erros de E/S, preenche o registro com as informações fornecidas sobre o erro e grava o registro no arquivo de log de erros de E/S.
O sistema coloca um limite no tamanho potencial de um registro de log de erros. Para o Windows 2000 e versões posteriores, o limite é definido como ERROR_LOG_MAXIMUM_SIZE. O NumberOfErrorValues passado para NdisWriteErrorLogEntry , portanto, tem um limite imposto pelo sistema, que é consideravelmente menor que o valor máximo possível para um ULONG.
Na prática, poucos chamadores de NdisWriteErrorLogEntry até se aproximam do limite de NumberOfErrorValues porque fornecer muitos valores adicionais NDIS_STATUS_XXX não é particularmente útil para o usuário ou administrador do sistema que lê posteriormente o log de erros, usando o visualizador de eventos Win32. Registrar um erro de E/S em todas as oportunidades possíveis não é particularmente útil para os usuários, portanto, um driver de miniporte deve registrar apenas erros críticos de E/S que podem ajudar um usuário ou administrador do sistema a depurar uma falha de rede para a qual a NIC é responsável em um computador específico ou um conflito de recursos de configuração descoberto durante a inicialização do driver.
Em geral, um driver de miniporto chamará NdisWriteErrorLogEntry durante a inicialização de sua função MiniportInitializeEx se não puder inicializar uma NIC que ela controla ou não puder alocar os recursos de hardware necessários para realizar operações de E/S em uma NIC. Um driver de miniporte também pode chamar NdisWriteErrorLogEntry quando uma operação de redefinição de dispositivo falha devido a erros de hardware irrecuperáveis. Registrar esses tipos de erros de E/S ajuda usuários ou administradores do sistema a identificar uma NIC mal configurada ou uma NIC com componentes de hardware com falha.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisWriteErrorLogEntry (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisWriteErrorLogEntry (NDIS 5.1)) no Windows XP. |
Plataforma de Destino | Universal |
Cabeçalho | ndis.h (inclua Ndis.h) |
Biblioteca | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
Regras de conformidade de DDI | Irql_Miscellaneous_Function(ndis) |