NdisAllocateSharedMemory, fonction (ndis.h)
La fonction NdisAllocateSharedMemory alloue de la mémoire partagée à partir d’un fournisseur de mémoire partagée.
Syntaxe
NDIS_STATUS NdisAllocateSharedMemory(
[in] NDIS_HANDLE NdisHandle,
[in] PNDIS_SHARED_MEMORY_PARAMETERS SharedMemoryParameters,
[in, out] PNDIS_HANDLE pAllocationHandle
);
Paramètres
[in] NdisHandle
Pilote NDIS ou handle d’instance obtenu lors de l’initialisation de l’appelant. Par exemple, un pilote miniport peut utiliser le handle NDIS qu’il a obtenu à partir du NdisMRegisterMiniportDriver ou Fonction MiniportInitializeEx. D’autres pilotes NDIS peuvent utiliser les handles des fonctions suivantes :
[in] SharedMemoryParameters
Pointeur vers un NDIS_SHARED_MEMORY_PARAMETERS structure qui définit les attributs demandés pour la mémoire partagée.
[in, out] pAllocationHandle
Pointeur vers un emplacement pour un handle qui identifie la mémoire partagée allouée. Le handle est disponible lorsque la fonction retourne ou qu’elle est NULL en cas d’échec de la fonction. L’appelant doit utiliser ce handle pour libérer la mémoire partagée allouée correctement.
Valeur de retour
NdisAllocateSharedMemory peut retourner les valeurs d’état suivantes :
Retourner le code | Description |
---|---|
|
L’opération s’est terminée avec succès. |
|
L’opération a échoué, car il y avait des ressources insuffisantes pour terminer l’opération. |
|
L’opération a échoué en raison d’un paramètre d’entrée non valide. |
|
L’opération a échoué pour des raisons non spécifiées. |
Remarques
Le paramètre sharedMemoryParameters contient un pointeur vers un NDIS_SHARED_MEMORY_PARAMETERS structure qui définit les attributs demandés pour la mémoire partagée. Si l’indicateur NDIS_SHARED_MEM_PARAMETERS_CONTIGUOUS n’est pas défini dans les indicateurs de membre, la mémoire partagée peut être spécifiée dans une liste de collecte de points contenue dans la mémoire non contiguë.
NDIS appelle la fonction NetAllocateSharedMemory d’un fournisseur de mémoire partagée à partir du contexte de l’appel à NdisAllocateSharedMemory.
Le pilote doit appeler la fonction NdisFreeSharedMemory pour libérer la mémoire partagée qu’elle alloue avec NdisAllocateSharedMemory.
Exigences
Exigence | Valeur |
---|---|
client minimum pris en charge | Pris en charge dans NDIS 6.20 et versions ultérieures. |
plateforme cible | Universel |
d’en-tête | ndis.h (include Ndis.h) |
bibliothèque | Ndis.lib |
IRQL | PASSIVE_LEVEL |