NdisRegisterDeviceEx, fonction (ndis.h)
La fonction NdisRegisterDeviceEx crée un objet d’appareil basé sur les attributs spécifiés.
Syntaxe
NDIS_STATUS NdisRegisterDeviceEx(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_DEVICE_OBJECT_ATTRIBUTES DeviceObjectAttributes,
[out] PDEVICE_OBJECT *pDeviceObject,
[out] PNDIS_HANDLE NdisDeviceHandle
);
Paramètres
[in] NdisHandle
Un handle de pilote miniport ou un handle de pilote de filtre que l’appelant a obtenu en appelant le Fonction NdisMRegisterMiniportDriver ou Fonction NdisFRegisterFilterDriver respectivement.
[in] DeviceObjectAttributes
Pointeur vers un NDIS_DEVICE_OBJECT_ATTRIBUTES structure qui contient les attributs du nouvel appareil.
[out] pDeviceObject
Pointeur qui pointe vers un pointeur vers une structure DEVICE_OBJECT nouvellement créée, si l’appel réussit. Si l’appel échoue, pDeviceObject est défini pour pointer sur NULL.
[out] NdisDeviceHandle
Pointeur vers une variable fournie par l’appelant dans laquelle cette fonction, si elle réussit, retourne un handle à l’objet d’appareil. Ce handle est un paramètre obligatoire pour la fonction NdisDeregisterDeviceEx que le pilote appelle par la suite.
Valeur retournée
NdisRegisterDeviceEx retourne l’une des valeurs de status suivantes :
Code de retour | Description |
---|---|
|
NdisRegisterDeviceEx a correctement inscrit l’appareil. |
|
L’appelant n’est pas un pilote NDIS. |
|
La tentative d’inscription du périphérique par le pilote a échoué. En règle générale, une telle erreur status est propagée à partir d’une fonction NdisXxx ou d’une routine de prise en charge en mode noyau. |
Remarques
Les pilotes miniport et les pilotes de filtre peuvent appeler NdisRegisterDeviceEx pour inscrire un appareil virtuel.
Le pilote doit ensuite appeler la fonction NdisDeregisterDeviceEx lorsque l’appareil n’est plus nécessaire. Si NdisRegisterDeviceEx a alloué une extension, NdisDeregisterDeviceEx libère l’extension.
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) |