NetApiBufferFree 函式 (lmapibuf.h)

NetApiBufferFree函式會釋放NetApiBufferAllocate函式配置的記憶體。 應用程式也應該呼叫 NetApiBufferFree ,以釋放其他網路管理功能在內部用來傳回信息的記憶體。

語法

NET_API_STATUS NET_API_FUNCTION NetApiBufferFree(
  [in] _Frees_ptr_opt_ LPVOID Buffer
);

參數

[in] Buffer

先前由另一個網路管理函式或呼叫 NetApiBufferAllocate 函式所配置的記憶體所傳回緩衝區的指標。

傳回值

如果函式成功,傳回值會NERR_Success。

如果函式失敗,則傳回值是系統錯誤碼。 如需錯誤碼的清單,請參閱 系統錯誤碼

備註

NetApiBufferFree函式可用來釋放網路管理功能所使用的記憶體。 此函式用於兩種情況:

  • 若要在不再需要記憶體時,將應用程式中的呼叫明確配置的記憶體釋放至 NetApiBufferAllocate 函式。
  • 若要釋放應用程式中呼叫內部配置的記憶體,以遠端網路管理功能將資訊傳回給呼叫者。 RPC 執行時間程式庫會在內部配置包含傳回信息的緩衝區。

許多網路管理功能會擷取資訊,並傳回此資訊作為可能包含複雜結構的緩衝區、結構陣列或巢狀結構的陣列。 這些函式會使用 RPC 執行時間程式庫,在內部配置包含傳回信息的緩衝區,不論呼叫是本機電腦還是遠端伺服器。 例如, NetServerEnum 函式會擷取伺服器清單,並以 bufptr 參數所指向的結構陣列的形式傳回此資訊。 當函式成功時, NetServerEnum 函式會在內部配置記憶體,以將 bufptr 參數中傳回的結構陣列儲存至應用程式。 當不再需要這個結構陣列時,應用程式應該呼叫NetApiBufferFree函式,並將Buffer參數設定為NetServerEnum所傳回的 bufptr參數,以釋放所使用的內部記憶體。 在這些情況下, NetApiBufferFree 函式會釋放配置給緩衝區的所有內部記憶體,包括巢狀結構的記憶體、字串指標和其他資料。

不需要特殊群組成員資格,才能成功執行 NetApiBufferFree 函式或任何其他 ApiBuffer 函式

如需示範如何使用 NetApiBufferFree 函式來釋放應用程式明確配置的記憶體的程式碼範例,請參閱 NetApiBufferAllocate 函 式。

如需示範如何使用 NetApiBufferFree 函式在內部配置記憶體以傳回信息的程式碼範例,請參閱 NetServerEnum 函式。

需求

   
最低支援的用戶端 Windows 2000 Professional [僅限傳統型應用程式]
最低支援的伺服器 Windows 2000 Server [僅限桌面應用程式]
目標平台 Windows
標頭 lmapibuf.h (包含 Lm.h)
程式庫 Netapi32.lib
Dll Netapi32.dll

另請參閱

Api 緩衝區函式

NetApiBufferAllocate

NetApiBufferReallocate

NetApiBufferSize

網路管理功能

網路管理概觀

網路管理功能緩衝區長度

網路管理功能緩衝區