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

Cria uma cópia desse quadro de chamada e todos os seus dados associados.

Aviso O quadro de chamada não limpo os dados copiados automaticamente. Portanto, depois que a cópia for retornada, o usuário será responsável por chamar Gratuitamente na cópia do quadro. Isso deve ser feito para evitar um vazamento de memória.
 

Sintaxe

HRESULT Copy(
  [in]  CALLFRAME_COPY   copyControl,
  [in]  ICallFrameWalker *pWalker,
  [out] ICallFrame       **ppFrame
);

Parâmetros

[in] copyControl

Determina se os dados do quadro de chamada copiados podem ser compartilhados com dados no quadro pai determinando sua dependência de tempo de vida no quadro pai. Para obter uma lista de valores, consulte a enumeração CALLFRAME_COPY . Se o sinalizador CALLFRAME_COPY_NESTED estiver definido, o cliente será responsável por usar o quadro de chamada copiado de uma maneira que seu tempo de vida esteja aninhado durante o tempo de vida de seu quadro pai tornando os dados fragmentáveis. Se o CALLFRAME_COPY_INDEPENDENT estiver definido, o tempo de vida do quadro copiado será independente dos pais.

[in] pWalker

Um ponteiro para uma instância da interface ICallFrameWalker . O método OnWalkInterface será chamado para cada ponteiro de interface copiado. Se esse parâmetro não for fornecido, qualquer ponteiro de interface copiado será passado para AddRef.

[out] ppFrame

Um ponteiro para um ponteiro ICallFrame para uma cópia do quadro de chamada.

Retornar valor

Se o método for bem-sucedido, ele retornará S_OK. Caso contrário, ele retornará um código de erro HRESULT.

Comentários

Copiar um quadro é como cancelar a exibição de um quadro em marshaled. O quadro de chamada só poderá ser copiado se tiver parâmetros. Se o quadro de chamada for invocado, ele não poderá ser copiado. O método copy copia ponteiros de interface como valores binários e nenhum ajuste de contagem referenciado é executado. Mas se esse comportamento for desejado, um ponteiro para ICallFrameWalker poderá ser usado.

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