Compartilhar via


Função NdisMCreateLog (ndis.h)

NdisMCreateLog aloca e abre um arquivo de log no qual um driver de miniporto pode gravar dados a serem exibidos por um aplicativo Win32 dedicado ao driver.

Sintaxe

NDIS_STATUS NdisMCreateLog(
  [in]  NDIS_HANDLE  MiniportAdapterHandle,
  [in]  UINT         Size,
  [out] PNDIS_HANDLE LogHandle
);

Parâmetros

[in] MiniportAdapterHandle

Especifica a entrada do identificador para MiniportInitializeEx.

[in] Size

Especifica quantos bytes alocar para o arquivo de log. O NDIS cria um arquivo temporário que não é armazenado em disco.

[out] LogHandle

Ponteiro para uma variável fornecida pelo chamador na qual essa função retorna um identificador para o arquivo de log. Esse identificador é um parâmetro necessário para o NdisXxxLog funções que o driver de miniporto chama posteriormente.

Valor de retorno

NdisMCreateLog pode retornar um dos seguintes:

Código de retorno Descrição
NDIS_STATUS_SUCCESS
O driver de miniporto pode usar o identificador retornado em logHandle para gravar dados no arquivo de log alocado pelo NDIS.
NDIS_STATUS_RESOURCES
Não foi possível alocar um arquivo de log do tamanho especificado.
NDIS_STATUS_FAILURE
O driver já chamado NdisMCreateLog com êxito.

Observações

Um driver de miniporto pode chamar o NdisM.. Log funções para fornecer qualquer informação que o gravador de driver escolher. Qualquer que seja o log do driver de miniporto pode ser exibido por um aplicativo Win32 dedicado ao driver. Esse aplicativo chama a função Win32 DeviceIoControl com IOCTL_NDIS_GET_LOG_DATA periodicamente para recuperar o driver de miniporto gravado no arquivo de log. Por exemplo, um driver de miniporto em desenvolvimento pode gravar dados de teste a serem exibidos por seu aplicativo correspondente.

Se NdisMCreateLog retornar NDIS_STATUS_RESOURCES, o driver poderá ajustar o tamanho do original para baixo e tentar chamar essa função novamente. No entanto, um driver de miniporto não pode chamar NdisMCreateLog para criar mais de um arquivo de log depois que uma chamada for bem-sucedida.

Seja qual for o tamanho do arquivo de log alocado, chamadas subsequentes para NdisMWriteLogData armazenar dados neste arquivo, que é tratado como um buffer circular. Ou seja, uma sequência de chamadas para NdisMWriteLogData eventualmente substitui os dados originalmente gravados no arquivo de log.

Requisitos

Requisito Valor
de cliente com suporte mínimo Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisMCreateLog (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisMCreateLog (NDIS 5.1)) no Windows XP.
da Plataforma de Destino Universal
cabeçalho ndis.h (inclua Ndis.h)
biblioteca Ndis.lib
IRQL PASSIVE_LEVEL
regras de conformidade de DDI Irql_Miniport_Driver_Function(ndis)

Consulte também

MiniportInitializeEx

NdisMCloseLog

NdisMFlushLog

NdisMWriteLogData