IPortClsNotifications::AllocNotificationBuffer 方法 (portcls.h)

在指定的記憶體集區中配置指定大小的緩衝區,以用於傳送通知,以允許音訊模組與 UWP 應用程式之間的通訊。

如需音訊模組的詳細資訊,請參閱 實作音訊模組探索

語法

NTSTATUS AllocNotificationBuffer(
  [in]  POOL_TYPE              PoolType,
  [in]  USHORT                 NumberOfBytes,
  [out] PPCNOTIFICATION_BUFFER *NotificationBuffer
);

參數

[in] PoolType

指定要配置物件的記憶體集區類型, (請參閱 POOL_TYPE) 。 建議的值為 NonPagedPoolNx 或 PagedPool。 記憶體集區類型選取也取決於 IRQL 層級。 如果在DISPATCH_LEVEL執行,則記憶體必須是非分頁。

[in] NumberOfBytes

要配置的位元元組數目。

[out] NotificationBuffer

方法寫入已配置通知位址 之PCNOTIFICATION_BUFFER 指標。

傳回值

STATUS_SUCCESS – 驅動程式能夠配置通知緩衝區。

STATUS_INVALID_PARAMETER – 如果驅動程序發現任何其他參數無效,除了其他錯誤狀態實例的特定案例之外,驅動程式會傳回此錯誤。

可能會傳回其他標準狀態代碼。 例如,如果無法配置所需的緩衝區,則會傳回STATUS_INSUFFICIENT_RESOURCES。

備註

AllocNotificationBuffer 的呼叫端必須在 IRQL <= DISPATCH_LEVEL執行。 如果驅動程式寫入器在 IRQL = DISPATCH_LEVEL呼叫此例程,則必須從非分頁記憶體配置 NotificationStructure。

規格需求

需求
最低支援的用戶端 Windows 10 版本 1703 和更新版本的 Windows 中提供。
目標平台 Universal
標頭 portcls.h (包含 Portcls.h)
程式庫 Portcls.lib
IRQL <= DISPATCH_LEVEL (请参阅一节)

另請參閱

IPortClsNotifications