Liberando dados de pares

Todos os ponteiros retornados pelas funções de infraestrutura de pares devem ser liberados usando PeerGraphFreeData ou PeerFreeData. Essas funções devem ser chamadas somente para estruturas que são retornadas diretamente por uma função de infraestrutura de mesmo nível. Não chame uma função FreeData diferente para liberar ponteiros aninhados, por exemplo, não chame uma função FreeData nos ponteiros em uma estrutura de _ registro de pares .

Exemplo de liberação de dados

O trecho de código a seguir mostra como recuperar as propriedades associadas a um grafo e, em seguida, liberar os dados retornados.

PEER_GRAPH_PROPERTIES  * pGraphProperties = NULL;
HRESULT hr = PeerGraphGetProperties(hGraph, &pGraphProperties);
if (SUCCEEDED(hr) && (NULL != pGraphProperties))
{
  // use pGraphProperties
  wprintf(L"%d\n", pGraphProperties->pwzGraphId);

  // release the data
  PeerGraphFreeData(pGraphProperties);
}