Função NdisReadConfiguration (ndis.h)

A função NdisReadConfiguration retorna o valor de uma entrada nomeada do tipo especificado do registro, considerando o identificador para uma chave do Registro aberta. Essa função deve ser invocada serialmente em relação a si mesma e à função NdisWriteConfiguration .

Sintaxe

void NdisReadConfiguration(
  [out] PNDIS_STATUS                  Status,
  [out] PNDIS_CONFIGURATION_PARAMETER *ParameterValue,
  [in]  NDIS_HANDLE                   ConfigurationHandle,
  [in]  PNDIS_STRING                  Keyword,
  [in]  NDIS_PARAMETER_TYPE           ParameterType
);

Parâmetros

[out] Status

Um ponteiro para uma variável fornecida pelo chamador na qual essa função retorna o status da chamada como um dos valores a seguir.

Valor Significado
NDIS_STATUS_SUCCESS
O buffer em ParameterValue contém as informações de configuração retornadas.
NDIS_STATUS_RESOURCES
O NDIS não pôde alocar recursos, geralmente memória suficiente, para retornar as informações solicitadas.
NDIS_STATUS_FAILURE
As informações solicitadas não puderam ser encontradas na chave do Registro aberta designada pelo ConfigurationHandle.

[out] ParameterValue

Um ponteiro para um local de memória em que o NDIS fornece um ponteiro para um NDIS_CONFIGURATION_PARAMETER estrutura se a chamada para NdisReadConfiguration for bem-sucedida. O NDIS aloca memória para o NDIS_CONFIGURATION_PARAMETER estrutura.

[in] ConfigurationHandle

O identificador para uma chave do Registro que foi retornada pelo NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndex ou Função NdisOpenConfigurationKeyByName .

[in] Keyword

Um ponteiro para um tipo de NDIS_STRING fornecido pelo chamador que descreve uma cadeia de caracteres contada, no conjunto de caracteres padrão do sistema, especificando o nome da entrada sob a chave do Registro aberta para a qual retornar o valor.

Como alternativa, o ponteiro para um NDIS_STRING_CONSTANT fornecido pelo chamador especificando um dos seguintes nomes de entrada predefinidos junto com valores retornados predefinidos:

Nome de entrada predefinido Valores retornados predefinidos
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
As seguintes opções só serão possíveis se um driver antigo (pré-NDIS 6.0):
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmmmm, em que MMMM é a versão principal e mmmm é o número de versão secundária. Por exemplo, 0x00050000 indica que a versão mais alta do NDIS compatível com o sistema é a versão principal 5, versão secundária 0.

[in] ParameterType

O tipo da entrada de valor especificada como um dos valores de enumeração NDIS_PARAMETER_TYPE . Esse parâmetro é ignorado em Windows NT e versões posteriores.

Retornar valor

Nenhum

Comentários

No registro de configuração do Windows 2000 e versões posteriores, um palavra-chave NDIS é um sinônimo de um nome de entrada de valor. Esse nome é uma sequência contada de caracteres Unicode, encerrada com um NULL.

Cada driver NDIS pode configurar informações de configuração no registro para si mesmo usando a diretiva AddReg em seu arquivo INF. Por exemplo, um driver de protocolo pode armazenar seu próprio nome como uma entrada com um valor de cadeia de caracteres pré-formatado que pode ser passado em chamadas para o Função NdisRegisterProtocolDriver . Para obter mais informações, consulte Add-registry-sections em um arquivo INF de rede.

Cada driver de miniporta também tem entradas de valor associadas no registro. As entradas de valor para qualquer driver de miniporto específico podem ser dependentes do dispositivo por natureza. Por exemplo, um driver de miniporto pode ter palavras-chave como *FlowControl, *SpeedDuplex e *InterruptModeration. O valor associado a esse palavra-chave NDIS pode ser um inteiro (tipo ULONG) ou uma cadeia de caracteres (tipo NDIS_STRING). Por exemplo, o conjunto de valores possíveis para a entrada *FlowControl já mencionada pode ser os valores NdisParameterInteger 0, 1, 2 ou 3, ou os equivalentes em hexadecimal como valores NdisParameterHexInteger .

NdisReadConfiguration armazena buffers e copia a cadeia de caracteres fornecida pelo chamador em Palavra-chave e libera o armazenamento alocado para essa cópia antes de retornar o controle ao chamador. A memória alocada para o NDIS_CONFIGURATION_PARAMETER estrutura é liberada quando o driver libera o ConfigurationHandle com a função NdisCloseConfiguration . O chamador de NdisReadConfiguration é responsável por liberar a cadeia de caracteres armazenada em buffer em Palavra-chave.

Observe que o NDIS não valida valores que um driver lê do registro. Portanto, o chamador de NdisReadConfiguration não deve fazer suposições sobre esses valores e deve validar cada valor lido do Registro. Se o chamador determinar que um valor está fora dos limites, ele deverá usar um valor padrão.

Para obter mais informações sobre arquivos de instalação e instalação, consulte Visão geral da instalação do dispositivo.

Requisitos

Requisito Valor
Cliente mínimo com suporte Com suporte para drivers NDIS 6.0 e NDIS 5.1 (consulte NdisReadConfiguration (NDIS 5.1)) no Windows Vista. Com suporte para drivers NDIS 5.1 (consulte NdisReadConfiguration (NDIS 5.1)) no Windows XP.
Plataforma de Destino Universal
Cabeçalho ndis.h (inclua Ndis.h)
Biblioteca Ndis.lib
IRQL PASSIVE_LEVEL
Regras de conformidade da DDI Irql_Miscellaneous_Function(ndis)

Confira também

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING