Compartilhar via


Método ICallFrame::Free (callobj.h)

Libera a cópia de quadro para evitar um vazamento de memória.

Quando uma cópia de um quadro de chamada é feita com o método Copy, o quadro de chamada não limpo os dados copiados automaticamente. Portanto, depois que uma cópia do quadro de chamada é retornada, o usuário é responsável por chamar o método Free para liberar a cópia de quadro e evitar um vazamento de memória.

Sintaxe

HRESULT Free(
  [in] ICallFrame       *pframeArgsDest,
  [in] ICallFrameWalker *pWalkerDestFree,
  [in] ICallFrameWalker *pWalkerCopy,
  [in] DWORD            freeFlags,
  [in] ICallFrameWalker *pWalkerFree,
  [in] DWORD            nullFlags
);

Parâmetros

[in] pframeArgsDest

Um ponteiro para uma instância da interface ICallFrame . Representa o ponteiro de pilha do quadro de chamada para o qual os parâmetros out devem ser copiados antes que a cópia do quadro seja liberada. O quadro de destino geralmente é o quadro pai do qual o quadro foi originalmente copiado. Esse parâmetro é opcional.

Ao liberar um quadro e especificar um parâmetro pframeArgsDest que está no mesmo espaço de memória que o do quadro receptor, somente o parâmetro pWalkerCopy é chamado em cada ponteiro de interface.

[in] pWalkerDestFree

Um ponteiro para uma instância da interface ICallFrameWalker . Se houver parâmetros de entrada e saída em pframeArgsDest, a propagação exigirá que esses valores sejam liberados. Ao fornecer o objeto pWalkerDestFree , os ponteiros de interface serão liberados. Se pframeArgsDest for NULL, esse parâmetro também deverá ser NULL e os ponteiros da interface deverão ser liberados chamando o método Release .

[in] pWalkerCopy

Um ponteiro para uma instância da interface ICallFrameWalker . Quando os parâmetros de entrada e saída em pframeArgsDest são liberados , a propagação dos parâmetros de saída é realizada. Se esse parâmetro não for especificado, os ponteiros da interface serão passados para AddRef. Esse parâmetro é opcional.

[in] freeFlags

Sinalizadores da enumeração CALLFRAME_FREE .

[in] pWalkerFree

Um ponteiro para uma instância da interface ICallFrameWalker . Quando especificado, um retorno de chamada é feito para cada ponteiro de interface encontrado durante a liberação. Se esse parâmetro não for especificado, os ponteiros da interface serão liberados pelo método Release .

[in] nullFlags

Sinalizadores da enumeração CALLFRAME_NULL .

Retornar valor

Esse método pode retornar os valores a seguir.

Código de retorno Descrição
S_OK
O método foi concluído com sucesso.
E_UNEXPECTED
Ocorreu um erro inesperado.

Requisitos

Requisito Valor
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 callobj.h

Confira também

ICallFrame