NdisFreeMemoryWithTagPriority 函式 (ndis.h)

NdisFreeMemoryWithTagPriority函式會釋放搭配 配置的記憶體 NdisAllocateMemoryWithTagPriority 函式

語法

void NdisFreeMemoryWithTagPriority(
  [in] NDIS_HANDLE NdisHandle,
  [in] PVOID       VirtualAddress,
  [in] ULONG       Tag
);

參數

[in] NdisHandle

呼叫端初始化期間取得的 NDIS 驅動程式或實例控制碼。 這應該是驅動程式傳遞至 的相同控制碼 NdisAllocateMemoryWithTagPriority 函式 。 例如,迷你埠驅動程式可以使用它從 取得的 NDIS 控制碼 NdisMRegisterMiniportDriverMiniportInitializeEx 函式。 其他 NDIS 驅動程式可以使用下列函式中的控制碼:

NdisRegisterProtocolDriver

NdisOpenAdapterEx

NdisFRegisterFilterDriver

FilterAttach

[in] VirtualAddress

所配置記憶體基底虛擬位址的指標。 這個位址是由 傳回的 NdisAllocateMemoryWithTagPriority 函式

[in] Tag

以單引號分隔的字串,最多四個字元,通常會以反向順序指定。 此呼叫的 NDIS 提供的預設標籤為 'maDN',但呼叫端可以藉由提供明確值來覆寫此預設值。

傳回值

備註

由於在配置迷你埠驅動程式卸載之前,很少會釋放非快取記憶體和連續記憶體,所以 NdisFreeMemoryWithTagPriority 的呼叫端通常會在 IRQL = PASSIVE_LEVEL針對這些類型的取消配置執行。 在任何情況下:

  • NdisFreeMemoryWithTagPriority 的呼叫端釋放連續記憶體時,它必須在 IRQL = PASSIVE_LEVEL執行。
  • NdisFreeMemoryWithTagPriority 的呼叫端釋放非快取記憶體時,它必須在 IRQL < DISPATCH_LEVEL上執行。
  • NdisFreeMemoryWithTagPriority 的呼叫端釋放不是連續或非快取的記憶體時,它必須在 IRQL <= DISPATCH_LEVEL執行。

必要條件

   
最低支援的用戶端 NDIS 6.20 和更新版本支援。
目標平臺 環球
標頭 ndis.h (包括 Ndis.h)
程式庫 Ndis.lib
IRQL 請參閱一節。
DDI 合規性規則 NdisAllocateMemoryWithTagPriority_Cleanup (ndis) ,NdisAllocateMemoryWithTagPriority_InitFail (ndis)

另請參閱

FilterAttach

MiniportInitializeEx

NdisAllocateMemoryWithTagPriority

NdisFRegisterFilterDriver

NdisMRegisterMiniportDriver

NdisOpenAdapterEx

NdisRegisterProtocolDriver