NdisOpenConfigurationEx, fonction (ndis.h)

Les pilotes NDIS appellent la fonction NdisOpenConfigurationEx pour obtenir un handle de configuration qui permet d’accéder aux paramètres de configuration dans le Registre.

Syntaxe

NDIS_STATUS NdisOpenConfigurationEx(
  [in]  PNDIS_CONFIGURATION_OBJECT ConfigObject,
  [out] PNDIS_HANDLE               ConfigurationHandle
);

Paramètres

[in] ConfigObject

Pointeur vers un appelant fourni et initialisé NDIS_CONFIGURATION_OBJECT structure.

[out] ConfigurationHandle

Pointeur vers une variable fournie par l’appelant dans laquelle NdisOpenConfigurationEx retourne un handle à une clé de Registre. La clé de Registre identifie les paramètres de configuration.

Valeur retournée

NdisOpenConfigurationEx retourne l’une des valeurs status suivantes :

Code de retour Description
NDIS_STATUS_SUCCESS
NdisOpenConfigurationEx a ouvert la clé de Registre dans laquelle les paramètres de configuration du pilote sont stockés.
NDIS_STATUS_RESOURCES
NdisOpenConfigurationEx a échoué en raison de ressources insuffisantes.
NDIS_STATUS_FAILURE
NdisOpenConfigurationEx retourne NDIS_STATUS_FAILURE si aucune des valeurs précédentes ne s’applique.

Remarques

NdisOpenConfigurationEx retourne un handle de configuration au niveau du paramètre ConfigurationHandle . Le handle de configuration est associé à une clé de Registre qui identifie l’emplacement des paramètres de configuration. L’appelant peut passer le handle de configuration à d’autres fonctions de configuration NDIS pour lire ou écrire des informations dans le Registre.

Pour accéder aux informations de configuration, utilisez le handle de configuration avec les fonctions suivantes :

NdisReadConfiguration

NdisWriteConfiguration

NdisOpenConfigurationKeyByName NdisOpenConfigurationKeyByIndex

Le type de données de Registre associées au handle de configuration dépend du type de handle que l’appelant passe à NdisOpenConfigurationEx dans le membre NdisHandle du NDIS_CONFIGURATION_OBJECT structure référencée par le paramètre ConfigObject . Le handle peut identifier les paramètres associés au pilote ou à une instance du pilote.

Si le pilote a obtenu le handle dans NdisHandle en appelant le Fonction NdisMRegisterMiniportDriver , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration du pilote miniport. Le pilote miniport peut utiliser le handle de configuration jusqu’à ce qu’il appelle le Fonction NdisMDeregisterMiniportDriver .

Si le pilote a obtenu le handle dans NdisHandle à partir du paramètre MiniportAdapterHandle de la fonction MiniportInitializeEx , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration d’un adaptateur miniport. Un pilote miniport peut passer le handle de configuration à la fonction NdisReadNetworkAddress pour récupérer des informations d’adresse réseau qui peuvent être configurées par le logiciel et gérées localement. Les pilotes Miniport peuvent utiliser le handle de configuration jusqu’à ce que NDIS arrête l’adaptateur miniport et que la fonction MiniportHaltEx retourne.

Si le pilote a obtenu le handle dans NdisHandle en appelant le Fonction NdisRegisterProtocolDriver , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration du pilote de protocole. Le pilote de protocole peut utiliser le handle de configuration jusqu’à ce qu’il appelle le Fonction NdisDeregisterProtocolDriver .

Si le handle dans NdisHandle est un pointeur vers une structure de NDIS_BIND_PARAMETERS transmise par NDIS au paramètre BindParameters de la fonction ProtocolBindAdapterEx , NdisOpenConfigurationEx fournit un handle vers l’emplacement du Registre où sont stockés les paramètres de configuration d’une liaison de protocole. Les pilotes de protocole peuvent utiliser le handle de configuration jusqu’à ce que l’opération de liaison soit terminée.

Si le pilote a obtenu le handle dans NdisHandle en appelant la fonction NdisOpenAdapterEx , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration d’une liaison de protocole. Le pilote de protocole peut utiliser le handle de configuration jusqu’à ce qu’il appelle la fonction NdisCloseAdapterEx .

Si un pilote de filtre a obtenu le handle dans NdisHandle en appelant le Fonction NdisFRegisterFilterDriver , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration du pilote de filtre. Les pilotes de filtre peuvent utiliser le handle de configuration jusqu’à ce qu’ils appellent le Fonction NdisFDeregisterFilterDriver .

Si un pilote de filtre a obtenu le handle dans NdisHandle à partir du paramètre NdisFilterHandle de la fonction FilterAttach , NdisOpenConfigurationEx fournit un handle à l’emplacement du Registre où sont stockés les paramètres de configuration d’un module de filtre. Le pilote de filtre peut utiliser le handle de configuration jusqu’à ce que NDIS détache le module de filtre et que la fonction FilterDetach retourne. Si un pilote de filtre d’analyse spécifie l’indicateur NDIS_CONFIG_FLAG_FILTER_INSTANCE_CONFIGURATION dans le membre Indicateurs du NDIS_CONFIGURATION_OBJECT structure, le pilote peut accéder à la configuration du module de filtre pour un module de filtre spécifique quand plusieurs modules de filtre sont configurés sur le même adaptateur miniport. La modification des pilotes de filtre ne doit pas utiliser cet indicateur.

Une fois qu’un pilote a terminé d’accéder aux informations de configuration, il doit appeler la fonction NdisCloseConfiguration pour libérer le handle de configuration et les ressources associées.

Note Pour être sûr que cette fonction s’exécute à IRQL = PASSIVE_LEVEL, un pilote peut planifier un élément de travail NDIS et appeler cette fonction et d’autres fonctions de configuration dans le contexte du rappel d’élément de travail.
 

Configuration requise

Condition requise Valeur
Client minimal pris en charge Pris en charge dans NDIS 6.0 et versions ultérieures.
Plateforme cible Universal
En-tête ndis.h (inclure Ndis.h)
Bibliothèque Ndis.lib
IRQL PASSIVE_LEVEL
Règles de conformité DDI Irql_Miscellaneous_Function(ndis),NdisOpenConfigurationEx(ndis)

Voir aussi

FilterAttach

FilterDetach

MiniportHaltEx

MiniportInitializeEx

NDIS_BIND_PARAMETERS

NDIS_CONFIGURATION_OBJECT

NdisCloseAdapterEx

NdisCloseConfiguration

NdisDeregisterProtocolDriver

NdisFDeregisterFilterDriver

NdisFRegisterFilterDriver

NdisMDeregisterMiniportDriver

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

NdisOpenConfigurationKeyByIndex NdisOpenConfigurationKeyByName

NdisReadConfiguration

NdisReadNetworkAddress

NdisRegisterProtocolDriver

NdisWriteConfiguration

ProtocolBindAdapterEx