NdisAllocateNetBufferList 函式 (ndis/nblapi.h)
呼叫 NdisAllocateNetBufferList 函式,從 NET_BUFFER_LIST 結構集區配置和初始化NET_BUFFER_LIST結構。
語法
NDIS_EXPORTED_ROUTINE NET_BUFFER_LIST * NdisAllocateNetBufferList(
[in] NDIS_HANDLE PoolHandle,
[in] USHORT ContextSize,
[in] USHORT ContextBackFill
);
參數
[in] PoolHandle
先前從呼叫傳回的NET_BUFFER_LIST結構集區句柄 NdisAllocateNetBufferListPool。
[in] ContextSize
要保留給呼叫端之NET_BUFFER_LIST_CONTEXT結構中已使用的數據空間量。 ContextSize 必須是MEMORY_ALLOCATION_ALIGNMENT所定義的多個值。
[in] ContextBackFill
呼叫端所需的 未使用資料空間 量 (回填空間) 。 NDIS 會將此值新增至 ContextSize ,並配置額外的空間。 ContextBackFill 必須是MEMORY_ALLOCATION_ALIGNMENT所定義的多個值。
傳回值
NdisAllocateNetBufferList 會傳回已配置之NET_BUFFER_LIST結構的指標。 如果配置失敗,則此指標為 NULL。
備註
您可以呼叫 NdisAllocateNetBufferList 或 NdisAllocateNetBufferAndNetBufferList 函式可從集區配置 NET_BUFFER_LIST 結構。
請注意,必須 從 NDIS 緩衝池配置NET_BUFFER和 NET_BUFFER_LIST 結構。 驅動程式不得從其私人記憶體集區或堆疊配置和初始化NET_BUFFER_LIST或NET_BUFFER結構。
呼叫 NdisFreeNetBufferList 函式以釋放NET_BUFFER_LIST結構。
規格需求
需求 | 值 |
---|---|
最低支援的用戶端 | NDIS 6.0 和更新版本支援。 |
目標平台 | Universal |
標頭 | ndis/nblapi.h (include ndis.h) |
程式庫 | Ndis.lib |
IRQL | <= DISPATCH_LEVEL |
DDI 合規性規則 | Irql_NetBuffer_Function (ndis) 、NdisAllocateNetBufferList2 (ndis) ,NdisAllocateNetBufferList2_InitFail (ndis) |
另請參閱
NET_BUFFER_LIST_POOL_PARAMETERS
NdisAllocateNetBufferAndNetBufferList NdisAllocateNetBufferListPool