Méthode IPortClsNotifications ::AllocNotificationBuffer (portcls.h)
Alloue une mémoire tampon de la taille spécifiée, dans le pool de mémoires spécifié, pour une utilisation dans l’envoi de notifications, afin de permettre les communications entre les modules audio et les applications UWP.
Pour plus d’informations sur les modules audio, consultez Implémentation de la découverte de modules audio.
Syntaxe
NTSTATUS AllocNotificationBuffer(
[in] POOL_TYPE PoolType,
[in] USHORT NumberOfBytes,
[out] PPCNOTIFICATION_BUFFER *NotificationBuffer
);
Paramètres
[in] PoolType
Spécifie le type de pool de mémoire à partir duquel l’objet doit être alloué (voir POOL_TYPE). Les valeurs recommandées sont NonPagedPoolNx ou PagedPool. La sélection du type de pool de mémoire dépend également du niveau IRQL. Si vous exécutez à DISPATCH_LEVEL la mémoire doit être non paginée.
[in] NumberOfBytes
Nombre d’octets à allouer.
[out] NotificationBuffer
Pointeur vers un PCNOTIFICATION_BUFFER dans lequel la méthode écrit l’adresse de la notification allouée.
Valeur retournée
STATUS_SUCCESS : le pilote a pu allouer la mémoire tampon de notification.
STATUS_INVALID_PARAMETER : le pilote retourne cette erreur s’il trouve un autre paramètre non valide, à l’exception des cas spécifiques pour d’autres instances d’erreur status.
Des codes de status standard supplémentaires peuvent être retournés. Par exemple, STATUS_INSUFFICIENT_RESOURCES seront retournées s’il n’est pas possible d’allouer la mémoire tampon requise.
Remarques
Les appelants d’AllocNotificationBuffer doivent s’exécuter sur IRQL <= DISPATCH_LEVEL. Si un enregistreur de pilote appelle cette routine à l’adresse IRQL = DISPATCH_LEVEL, l’objet NotificationStructure doit être alloué à partir de la mémoire non paginée.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Disponible dans Windows 10, version 1703 et versions ultérieures de Windows. |
Plateforme cible | Universal |
En-tête | portcls.h (include Portcls.h) |
Bibliothèque | Portcls.lib |
IRQL | <= DISPATCH_LEVEL (voir la section Notes) |