Compartir a través de


Función NdisReadConfiguration (ndis.h)

La función NdisReadConfiguration devuelve el valor de una entrada con nombre del tipo especificado del Registro, dado el identificador a una clave del Registro abierta. Esta función debe invocarse en serie con respecto a sí misma y a la función NdisWriteConfiguration.

Sintaxis

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

Puntero a una variable proporcionada por el autor de la llamada en la que esta función devuelve el estado de la llamada como uno de los valores siguientes.

Valor Significado
NDIS_STATUS_SUCCESS
El búfer de ParameterValue contiene la información de configuración devuelta.
NDIS_STATUS_RESOURCES
NDIS no pudo asignar recursos, normalmente suficiente memoria, para devolver la información solicitada.
NDIS_STATUS_FAILURE
No se encontró la información solicitada en la clave del Registro abierta designada por el ConfigurationHandle.

[out] ParameterValue

Puntero a una ubicación de memoria donde NDIS proporciona un puntero a un NDIS_CONFIGURATION_PARAMETER estructura si la llamada a NdisReadConfiguration es correcta. NDIS asigna memoria para estructura NDIS_CONFIGURATION_PARAMETER.

[in] ConfigurationHandle

Identificador de una clave del Registro devuelta por el NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndex, o función NdisOpenConfigurationKeyByName.

[in] Keyword

Puntero a un tipo de NDIS_STRING proporcionado por el autor de la llamada que describe una cadena con recuento, en el juego de caracteres predeterminado del sistema, especificando el nombre de la entrada en la clave del Registro abierta para la que se va a devolver el valor.

Como alternativa, puntero a un NDIS_STRING_CONSTANT proporcionado por el autor de la llamada especificando uno de los siguientes nombres de entrada predefinidos junto con valores devueltos predefinidos:

Nombre de entrada predefinido Valores devueltos predefinidos
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
Los siguientes son posibles solo si un controlador anterior (anterior a NDIS 6.0):
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmmmmmm, donde MMMM es la versión principal y mmmm es el número de versión secundaria. Por ejemplo, 0x00050000 indica que la versión NDIS más alta admitida por el sistema es la versión principal 5, versión secundaria 0.

[in] ParameterType

Tipo de la entrada de valor que se especifica como uno de los valores de enumeración de NDIS_PARAMETER_TYPE. Este parámetro se omite en Windows NT y versiones posteriores.

Valor devuelto

Ninguno

Observaciones

En el Registro de configuración de Windows 2000 y versiones posteriores, una palabra clave NDIS es un sinónimo de un nombre de entrada de valor . Este nombre es una secuencia contada de caracteres Unicode, terminada con un NULL.

Cada controlador NDIS puede configurar información de configuración en el Registro para sí misma mediante la directiva addReg de en su archivo INF. Por ejemplo, un controlador de protocolo puede almacenar su propio nombre como una entrada con un valor de cadena con formato previo que se puede pasar a las llamadas a . función NdisRegisterProtocolDriver. Para obtener más información, vea Add-registry-sections in a Network INF File.

Cada controlador de miniport también tiene entradas de valor asociadas en el Registro. Las entradas de valor de cualquier controlador de miniport particular pueden depender del dispositivo por naturaleza. Por ejemplo, un controlador de minipuerto podría tener palabras clave como *FlowControl, *SpeedDuplex y *InterruptModeration. El valor asociado a dicha palabra clave NDIS puede ser un entero (tipo ULONG) o una cadena (NDIS_STRING-type). Por ejemplo, el conjunto de valores posibles para la entrada *FlowControl ya mencionada podría ser NdisParameterInteger valores 0, 1, 2 o 3, o los equivalentes en hexadecimal como valores NdisParameterHexInteger.

NdisReadConfiguration almacena en búferes y copia la cadena proporcionada por el autor de la llamada en Palabra clave y libera el almacenamiento que asigna para esta copia antes de devolver el control al autor de la llamada. Memoria que asigna para NDIS_CONFIGURATION_PARAMETER estructura se libera cuando el controlador libera ConfigurationHandle con la función NdisCloseConfiguration. El autor de la llamada de NdisReadConfiguration es responsable de liberar la cadena almacenada en búfer en Palabra clave.

Tenga en cuenta que NDIS no valida los valores que lee un controlador del Registro. Por lo tanto, el autor de la llamada de NdisReadConfiguration no debe realizar ninguna suposición sobre dichos valores y debe validar cada valor leído del Registro. Si el autor de la llamada determina que un valor está fuera de los límites, debe usar un valor predeterminado en su lugar.

Para obtener más información sobre los archivos de instalación e instalación, consulte Información general sobre la instalación de dispositivos.

Requisitos

Requisito Valor
cliente mínimo admitido Compatible con los controladores NDIS 6.0 y NDIS 5.1 (consulte NdisReadConfiguration (NDIS 5.1)) en Windows Vista. Compatible con los controladores NDIS 5.1 (consulte NdisReadConfiguration (NDIS 5.1)) en Windows XP.
de la plataforma de destino de Universal
encabezado de ndis.h (incluya Ndis.h)
biblioteca de Ndis.lib
irQL PASSIVE_LEVEL
reglas de cumplimiento de DDI Irql_Miscellaneous_Function(ndis)

Consulte también

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING