Função NetApiBufferFree (lmapibuf.h)
A função NetApiBufferFree libera a memória alocada pela função NetApiBufferAllocate . Os aplicativos também devem chamar NetApiBufferFree para liberar a memória que outras funções de gerenciamento de rede usam internamente para retornar informações.
Sintaxe
NET_API_STATUS NET_API_FUNCTION NetApiBufferFree(
[in] _Frees_ptr_opt_ LPVOID Buffer
);
Parâmetros
[in] Buffer
Um ponteiro para um buffer retornado anteriormente por outra função de gerenciamento de rede ou memória alocada chamando a função NetApiBufferAllocate .
Valor retornado
Se a função for bem-sucedida, o valor retornado será NERR_Success.
Se a função falhar, o valor retornado será um código de erro do sistema. Para obter uma lista de códigos de erro, consulte Códigos de erro do sistema.
Comentários
A função NetApiBufferFree é usada para liberar a memória usada pelas funções de gerenciamento de rede. Essa função é usada em dois casos:
- Para liberar memória explicitamente alocada por chamadas em um aplicativo para a função NetApiBufferAllocate quando a memória não for mais necessária.
- Para liberar memória alocada internamente por chamadas em um aplicativo para funções remotas de gerenciamento de rede que retornam informações ao chamador. A biblioteca de tempo de execução RPC aloca internamente o buffer que contém as informações de retorno.
Muitas funções de gerenciamento de rede recuperam informações e retornam essas informações como um buffer que pode conter uma estrutura complexa, uma matriz de estruturas ou uma matriz de estruturas aninhadas. Essas funções usam a biblioteca de tempo de execução RPC para alocar internamente o buffer que contém as informações de retorno, seja a chamada para um computador local ou um servidor remoto. Por exemplo, a função NetServerEnum recupera uma lista de servidores e retorna essas informações como uma matriz de estruturas apontadas pelo parâmetro bufptr . Quando a função é bem-sucedida, a memória é alocada internamente pela função NetServerEnum para armazenar a matriz de estruturas retornadas no parâmetro bufptr para o aplicativo. Quando essa matriz de estruturas não for mais necessária, a função NetApiBufferFree deverá ser chamada pelo aplicativo com o parâmetro Buffer definido como o parâmetro bufptr retornado por NetServerEnum para liberar essa memória interna usada. Nesses casos, a função NetApiBufferFree libera toda a memória interna alocada para o buffer, incluindo memória para estruturas aninhadas, ponteiros para cadeias de caracteres e outros dados.
Nenhuma associação de grupo especial é necessária para executar com êxito a função NetApiBufferFree ou qualquer uma das outras funções do ApiBuffer.
Para obter um exemplo de código que demonstra como usar a função NetApiBufferFree para liberar memória explicitamente alocada por um aplicativo, consulte a função NetApiBufferAllocate .
Para obter um exemplo de código que demonstra como usar a função NetApiBufferFree para liberar memória alocada internamente por uma função de gerenciamento de rede para retornar informações, consulte a função NetServerEnum .
Requisitos
Cliente mínimo com suporte | Windows 2000 Professional [somente aplicativos da área de trabalho] |
Servidor mínimo com suporte | Windows 2000 Server [somente aplicativos da área de trabalho] |
Plataforma de Destino | Windows |
Cabeçalho | lmapibuf.h (inclua Lm.h) |
Biblioteca | Netapi32.lib |
DLL | Netapi32.dll |
Confira também
Funções de gerenciamento de rede
Visão geral do gerenciamento de rede