Partager via


NdisReadConfiguration, fonction (ndis.h)

La fonction NdisReadConfiguration retourne la valeur d’une entrée nommée du type spécifié à partir du Registre, en fonction du handle d’une clé de Registre ouverte. Cette fonction doit être appelée en série par rapport à elle-même et à la fonction NdisWriteConfiguration.

Syntaxe

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

Paramètres

[out] Status

Pointeur vers une variable fournie par l’appelant dans laquelle cette fonction retourne l’état de l’appel en tant que l’une des valeurs suivantes.

Valeur Signification
NDIS_STATUS_SUCCESS
La mémoire tampon à ParameterValue contient les informations de configuration retournées.
NDIS_STATUS_RESOURCES
NDIS n’a pas pu allouer de ressources, généralement suffisamment de mémoire, pour retourner les informations demandées.
NDIS_STATUS_FAILURE
Les informations demandées ne sont pas disponibles sous la clé de Registre ouverte désignée par l'ConfigurationHandle.

[out] ParameterValue

Pointeur vers un emplacement de mémoire où NDIS fournit un pointeur vers un NDIS_CONFIGURATION_PARAMETER structure si l’appel à NdisReadConfiguration réussit. NDIS alloue de la mémoire pour le structure NDIS_CONFIGURATION_PARAMETER.

[in] ConfigurationHandle

Handle vers une clé de Registre retournée par le NdisOpenConfigurationEx, NdisOpenConfigurationKeyByIndex, ou fonction NdisOpenConfigurationKeyByName.

[in] Keyword

Pointeur vers un type NDIS_STRING fourni par l’appelant décrivant une chaîne comptée, dans le jeu de caractères par défaut système, en spécifiant le nom de l’entrée sous la clé de Registre ouverte pour laquelle retourner la valeur.

Vous pouvez également pointer vers un NDIS_STRING_CONSTANT fourni par l’appelant en spécifiant l’un des noms d’entrée prédéfinis suivants, ainsi que les valeurs de retour prédéfinies :

Nom d’entrée prédéfini Valeurs de retour prédéfinies
ProcessorType
  • NdisProcessorX86
  • NdisProcessorAmd64
  • NdisProcessorIA64
  • NdisProcessorAlpha
Les éléments suivants sont possibles uniquement si un ancien pilote (pré-NDIS 6.0) :
  • NdisProcessorMips
  • NdisProcessorPpc
NdisVersion 0xMMMMmmmm, où MMMM est la version principale et mmmm est le numéro de version secondaire. Par exemple, 0x00050000 indique que la version NDIS la plus élevée prise en charge par le système est la version majeure 5, la version mineure 0.

[in] ParameterType

Type de l’entrée de valeur spécifiée comme l’une des valeurs d’énumération NDIS_PARAMETER_TYPE. Ce paramètre est ignoré dans Windows NT et versions ultérieures.

Valeur de retour

Aucun

Remarques

Dans le Registre de configuration de Windows 2000 et versions ultérieures, un mot clé NDIS est un synonyme d’un nom d’entrée de valeur . Ce nom est une séquence comptée de caractères Unicode, terminée par un NULL.

Chaque pilote NDIS peut configurer des informations de configuration dans le Registre à l’aide de la directive AddReg dans son fichier INF. Par exemple, un pilote de protocole peut stocker son propre nom en tant qu’entrée avec une valeur de chaîne préformatée qui peut être passée dans les appels au fonction NdisRegisterProtocolDriver. Pour plus d’informations, consultez sections Add-registry-registry dans un fichier INF réseau.

Chaque pilote miniport a également des entrées de valeur associées dans le Registre. Les entrées de valeur pour n’importe quel pilote miniport particulier peuvent être dépendantes de l’appareil par nature. Par exemple, un pilote miniport peut avoir des mots clés tels que *FlowControl, *SpeedDuplex et *InterruptModeration. La valeur associée à un tel mot clé NDIS peut être un entier (type ULONG) ou une chaîne (NDIS_STRING-type). Par exemple, l’ensemble de valeurs possibles pour l’entrée *FlowControl déjà mentionnée peut être NdisParameterInteger valeurs 0, 1, 2 ou 3, ou les équivalents en hexadécimaux comme NdisParameterHexInteger valeurs.

NdisReadConfiguration met en mémoire tampon et copie la chaîne fournie par l’appelant à mot clé et libère le stockage qu’il alloue pour cette copie avant de retourner le contrôle à l’appelant. Mémoire qu’il alloue pour le NDIS_CONFIGURATION_PARAMETER structure est libérée lorsque le pilote libère ConfigurationHandle avec la fonction NdisCloseConfiguration. L’appelant de NdisReadConfiguration est chargé de libérer la chaîne mise en mémoire tampon à mot clé.

Notez que NDIS ne valide pas les valeurs qu’un pilote lit à partir du Registre. L’appelant de NdisReadConfiguration ne doit donc pas effectuer d’hypothèses sur ces valeurs et doit valider chaque valeur lue à partir du Registre. Si l’appelant détermine qu’une valeur est hors limites, elle doit utiliser une valeur par défaut à la place.

Pour plus d’informations sur les fichiers d’installation et d’installation, consultez Vue d’ensemble de l’installation de l’appareil.

Exigences

Exigence Valeur
client minimum pris en charge Pris en charge pour les pilotes NDIS 6.0 et NDIS 5.1 (voir NdisReadConfiguration (NDIS 5.1)) dans Windows Vista. Pris en charge pour les pilotes NDIS 5.1 (voir NdisReadConfiguration (NDIS 5.1)) dans Windows XP.
plateforme cible Universel
d’en-tête ndis.h (include Ndis.h)
bibliothèque Ndis.lib
IRQL PASSIVE_LEVEL
règles de conformité DDI Irql_Miscellaneous_Function(ndis)

Voir aussi

ANSI_STRING

NDIS_CONFIGURATION_PARAMETER

NDIS_PARAMETER_TYPE

NdisAnsiStringToUnicodeString

NdisCloseConfiguration

NdisFreeString

NdisInitAnsiString

NdisInitUnicodeString

NdisInitializeString

NdisOpenConfigurationEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadNetworkAddress

NdisUnicodeStringToAnsiString

NdisWriteConfiguration

UNICODE_STRING