MAPIFreeBuffer
9/8/2008
The MAPIFreeBuffer Uma reserva memória que foi anteriormente alocada com um chamar a função libera o MAPIAllocateBuffer função, ou a MAPIAllocateMore função.
Syntax
ULONG MAPIFreeBuffer(
LPVOID lpBuffer
);
Parameters
- lpBuffer
[no] Ponteiro para uma reserva previamente alocado memória; Se NULL, MAPIFreeBuffer não faz nada.
Return Value
- S_OK
O chamar bem-sucedida e liberar a memória solicitada. MAPIFreeBuffer Também pode retornar S_OK Em já liberada locais ou se bloco de memória não é alocada com MAPIAllocateBuffer e MapVirtualKey. MAPIAllocateMore.
Remarks
Geralmente, quando um provedor aplicativo cliente ou serviço chama MAPIAllocateBuffer ou ISpTTSEngine::Speak. MAPIAllocateMore, o sistema operacional construções em contíguo uma reserva memória um ou mais estruturas complexas com múltiplo níveis de ponteiros. Quando uma função MAPI ou método cria uma reserva com tal conteúdo, um cliente pode posteriormente livre todos as estruturas contidas a reserva passando para MAPIFreeBuffer o ponteiro para a reserva retornada pela função de MAPI que criou a reserva. Para um provedor serviço para um usando reserva memória livre MAPIFreeBuffer, ele deve transmitir o ponteiro para essa reserva retornado com suporte objeto do provedor.
A chamar para MAPIFreeBuffer a livre uma reserva específica deve ser feitas tão logo como um cliente ou provedor é terminado usando esta reserva.
Um provedor cliente ou serviço deve operar na suposição de que o ponteiro transmitido lpBuffer não é válido após um bem-sucedido retornar da MAPIFreeBuffer. Se o ponteiro indica qualquer um bloco de memória não alocados pelo sistema de mensagens por meio MAPIAllocateBuffer ou ISpTTSEngine::Speak. MAPIAllocateMore Ou um livre bloco memória, o comportamento do MAPIFreeBuffer é indefinido.
Observação
Passando um ponteiro nulo para MAPIFreeBuffer Torna codificar limpeza aplicativo mais simples e menor porque MAPIFreeBuffer pode inicializar ponteiros para NULL e, em seguida, livre-los em codificar a limpeza sem para testá-los primeiro.
Requirements
Header | mapix.h |
Library | cemapi.lib |
Windows Embedded CE | Windows CE 3.0 and later |
Windows Mobile | Pocket PC 2002 and later, Smartphone 2002 and later |