Metodo IPortClsNotifications::AllocNotificationBuffer (portcls.h)
Alloca un buffer delle dimensioni specificate, nel pool di memoria specificato, da usare per l'invio di notifiche, per consentire le comunicazioni tra moduli audio e app UWP.
Per altre informazioni sui moduli audio, vedere Implementazione dell'individuazione del modulo audio.
Sintassi
NTSTATUS AllocNotificationBuffer(
[in] POOL_TYPE PoolType,
[in] USHORT NumberOfBytes,
[out] PPCNOTIFICATION_BUFFER *NotificationBuffer
);
Parametri
[in] PoolType
Specifica il tipo di pool di memoria da cui deve essere allocato l'oggetto (vedere POOL_TYPE). I valori consigliati sono NonPagedPoolNx o PagedPool. La selezione del tipo di pool di memoria dipende anche dal livello IRQL. Se è in esecuzione in DISPATCH_LEVEL la memoria deve essere non di paging.
[in] NumberOfBytes
Numero di byte da allocare.
[out] NotificationBuffer
Puntatore a un PCNOTIFICATION_BUFFER in cui il metodo scrive l'indirizzo della notifica allocata.
Valore restituito
STATUS_SUCCESS: il driver è stato in grado di allocare il buffer di notifica.
STATUS_INVALID_PARAMETER: il driver restituisce questo errore se rileva qualsiasi altro parametro non valido, a parte i casi specifici per altre istanze dello stato di errore.
È possibile che vengano restituiti codici di stato standard aggiuntivi. Ad esempio, STATUS_INSUFFICIENT_RESOURCES verrà restituito se non è possibile allocare il buffer necessario.
Commenti
I chiamanti di AllocNotificationBuffer devono essere in esecuzione in IRQL <= DISPATCH_LEVEL. Se un writer di driver chiama questa routine in IRQL = DISPATCH_LEVEL, NotificationStructure deve essere allocato dalla memoria non di paging.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Disponibile in Windows 10 versione 1703 e successive di Windows. |
Piattaforma di destinazione | Universale |
Intestazione | portcls.h (include Portcls.h) |
Libreria | Portcls.lib |
IRQL | <= DISPATCH_LEVEL (vedere la sezione Osservazioni) |