共用方式為


NdisAdvanceNetBufferListDataStart 函式 (ndis/nblapi.h)

呼叫 NdisAdvanceNetBufferListDataStart 函式,以釋放先前呼叫 中宣告的數據空間 NdisRetreatNetBufferListDataStart 函式。

語法

NDIS_EXPORTED_ROUTINE VOID NdisAdvanceNetBufferListDataStart(
  [in] NET_BUFFER_LIST     *NetBufferList,
  [in] ULONG               DataOffsetDelta,
  [in] BOOLEAN             FreeMdl,
       NET_BUFFER_FREE_MDL *FreeMdlMdlHandler
);

參數

[in] NetBufferList

先前配置之 NET_BUFFER_LIST 結構的指標。

[in] DataOffsetDelta

要釋放的數據空間量

[in] FreeMdl

如果 TRUE 和 NDIS 配置記憶體以滿足對應的 NdisRetreatNetBufferListDataStart 呼叫,則此函式會釋放配置的記憶體和相關聯的 MDL。

FreeMdlMdlHandler

NetFreeMdl 函式的選擇性進入點。 如果呼叫端指定 NetFreeMdl 函式的進入點,NDIS 會呼叫 NetFreeMdl 釋放 MDL 和記憶體。

傳回值

沒有

言論

NdisAdvanceNetBufferListDataStart 會針對 NET_BUFFER_LIST 結構中的所有 NET_BUFFER 結構,發行 使用的數據空間。 如果freeMdl true NdisRetreatNetBufferListDataStart 配置記憶體,以滿足對應的配置要求,
NdisAdvanceNetBufferListDataStart 釋放配置的記憶體。 呼叫此函式相當於呼叫 NdisAdvanceNetBufferDataStart NET_BUFFER_LIST 結構上每個NET_BUFFER結構。 不過,呼叫 NdisAdvanceNetBufferListDataStart 更有效率。

當通訊協定驅動程式在接收路徑上呼叫 NdisAdvanceNetBufferListDataStart 以存取各種傳輸標頭時,不應該修改 MDL 鏈結,而且 FreeMdlFALSE

要求

要求 價值
最低支援的用戶端 NDIS 6.0 和更新版本支援。
目標平臺 普遍
標頭 ndis/nblapi.h (include ndis.h)
連結庫 Ndis.lib
IRQL <= DISPATCH_LEVEL
DDI 合規性規則 Irql_NetBuffer_Function(ndis)

另請參閱

NET_BUFFER

NET_BUFFER_LIST

NdisAdvanceNetBufferDataStart NdisRetreatNetBufferListDataStart

NetAllocateMdl

NetFreeMdl