Fonction NdisMAllocatePort (ndis.h)
La fonction NdisMAllocatePort alloue un port NDIS associé à un adaptateur miniport.
Syntaxe
NDIS_STATUS NdisMAllocatePort(
NDIS_HANDLE NdisMiniportHandle,
[in, out] PNDIS_PORT_CHARACTERISTICS PortCharacteristics
);
Paramètres
NdisMiniportHandle
La poignée de l’adaptateur miniport que NDIS a passée au paramètre MiniportAdapterHandle du Fonction MiniportInitializeEx .
[in, out] PortCharacteristics
Pointeur vers un NDIS_PORT_CHARACTERISTICS structure qui définit les caractéristiques du port.
Valeur retournée
NdisMAllocatePort peut retourner l’une des valeurs suivantes :
Code de retour | Description |
---|---|
|
NDIS a correctement alloué des ressources pour le port. |
|
NDIS n’a pas pu allouer de ressources pour le port. |
|
L’allocation de port a échoué, car l’adaptateur miniport associé se ferme. |
|
Les données fournies au paramètre PortCharacteristics n’étaient pas valides . |
Remarques
La fonction NdisMAllocatePort alloue des ressources et un numéro de port pour un port associé à une carte miniport. Le port n’est pas actif tant que le pilote miniport n’émet pas un événement NetEventPortActivation Plug-and-Play (PnP) pour le port.
Une fois que le pilote miniport a activé le port, NDIS génère une notification PnP pour les pilotes qui se superposent. Si un pilote trop élevé ou une application en mode utilisateur émet le OID_GEN_ENUMERATE_PORTS OID pour énumérer les ports d’une carte miniport, NDIS n’inclut pas les ports alloués non actifs dans la liste des ports.
Lorsque NdisMAllocatePort retourne correctement, le membre PortNumber du NDIS_PORT_CHARACTERISTICS structure spécifiée par le paramètre PortCharacteristics est définie sur le numéro de port attribué par NDIS au port.
Une fois qu’un port n’est plus requis, le pilote miniport doit appeler la fonction NdisMFreePort pour libérer le port.
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 | <= DISPATCH_LEVEL |