Compartilhar via


Função PeerCollabAsyncInviteContact (p2p.h)

A função PeerCollabAsyncInviteContact envia um convite para um contato par confiável para ingressar na atividade de colaboração par do remetente em uma conexão segura. A disponibilidade da resposta do convite é atualizada por meio de um evento assíncrono.

Sintaxe

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerCollabAsyncInviteContact(
  [in, optional] PCPEER_CONTACT    pcContact,
  [in]           PCPEER_ENDPOINT   pcEndpoint,
  [in]           PCPEER_INVITATION pcInvitation,
  [in, optional] HANDLE            hEvent,
  [optional]     HANDLE            *phInvitation
);

Parâmetros

[in, optional] pcContact

Ponteiro para uma estrutura PEER_CONTACT que contém as informações de contato associadas ao destinatário do convite. Esse parâmetro é opcional.

Para convidar o ponto de extremidade do par de chamada especificado em pcEndpoint, defina o valor do ponteiro como NULL.

[in] pcEndpoint

Ponteiro para uma estrutura PEER_ENDPOINT que contém informações sobre o ponto de extremidade do par convidado. O ponto de extremidade deve ser associado ao contato par especificado em pcContact.

[in] pcInvitation

Ponteiro para uma estrutura PEER_INVITATION que contém a solicitação de convite para enviar para o ponto de extremidade especificado em pcEndpoint. E_INVALIDARG será retornado se esse parâmetro for definido como NULL.

[in, optional] hEvent

Manipule para o evento deste convite, criado por uma chamada anterior para CreateEvent. O evento é sinalizado quando o status do convite assíncrono é atualizado. Para obter os dados de resposta, chame PeerCollabGetInvitationResponse.

Se o evento não for fornecido, o chamador deverá sondar o resultado chamando PeerCollabGetInvitationResponse.

[optional] phInvitation

Um ponteiro para um identificador para o convite enviado. A estrutura limpará as informações de resposta depois que a resposta do convite for recebida se NULL for especificado. Quando NULL não é o identificador especificado para o convite fornecido, ele deve ser fechado chamando PeerCollabCloseHandle.

Retornar valor

Retorna S_OK se a função for bem-sucedida. Caso contrário, a função retornará um dos valores a seguir.

Código de retorno Descrição
E_OUTOFMEMORY
Não há memória suficiente para dar suporte a essa operação.
E_INVALIDARG
Um dos argumentos é inválido.
E_NOTIMPL
pcEndpoint é NULL.
PEER_E_NOT_INITIALIZED
A infraestrutura do Windows Peer não é inicializada. É necessário chamar a função de inicialização relevante.

Comentários

Essa API garante que o par que recebe o convite seja o contato especificado como entrada. A conexão falhará se o contato específico não estiver presente no ponto de extremidade especificado. O uso de PeerCollabAsyncInviteContact é recomendado no lugar do PeerCollabAsyncInviteEndpoint menos seguro.

Uma notificação será exibida para o destinatário do convite. Esse sistema será convertido em uma caixa de diálogo na qual o usuário pode aceitar ou recusar o convite. Quando o convite é aceito com êxito, o aplicativo colaborativo é iniciado no computador do destinatário.

Para receber com êxito o convite, o aplicativo deve ser registrado no computador do destinatário usando PeerCollabRegisterApplication. Também é possível que o remetente do convite tenha códigos de falha retornados porque o destinatário desativou os convites do aplicativo.

A função PeerCollabGetInvitiationResponse retornará PEER_E_CONNECTION_FAILED se o contato para o qual o convite está sendo enviado não estiver aceitando convites.

Se o destinatário estiver aceitando convites somente de contatos confiáveis, o remetente do convite deverá ser adicionado ao repositório de contatos do computador destinatário. O remetente deve ser adicionado ao repositório de contatos antes da tentativa de convite. Para adicionar um contato ao repositório de contatos, chame PeerCollabAddContact.

Para cancelar um convite pendente, chame PeerCollabCancelInvitation.

Requisitos

Requisito Valor
Cliente mínimo com suporte Windows Vista [somente aplicativos da área de trabalho]
Servidor mínimo com suporte Nenhum compatível
Plataforma de Destino Windows
Cabeçalho p2p.h
Biblioteca P2P.lib
DLL P2P.dll

Confira também

PEER_CONTACT

PEER_ENDPOINT

PEER_INVITATION

Funções da API de Colaboração de Pares

PeerCollabAddContact

PeerCollabCancelInvitation

PeerCollabCloseHandle

PeerCollabGetAppLaunchInfo

PeerCollabGetInvitationResponse