Partager via


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)

Voir aussi

IPortClsNotifications