PeerCollabAsyncInviteContact 函数 (p2p.h)

PeerCollabAsyncInviteContact 函数向受信任的对等联系人发送邀请,以通过安全连接加入发件人的对等协作活动。 邀请响应的可用性通过异步事件进行更新。

语法

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
);

参数

[in, optional] pcContact

指向包含与邀请收件人关联的联系信息 的PEER_CONTACT 结构的指针。 此参数是可选的。

若要邀请 pcEndpoint 中指定的调用对等方的终结点,请将指针值设置为 NULL

[in] pcEndpoint

指向包含有关受邀对等终结点的信息 的PEER_ENDPOINT 结构的指针。 终结点必须与 pcContact 中指定的对等联系人相关联。

[in] pcInvitation

指向包含发送到 pcEndpoint 中指定的终结点的邀请请求的PEER_INVITATION结构的指针。 如果此参数设置为 NULL,则返回E_INVALIDARG。

[in, optional] hEvent

此邀请的事件句柄,由上一次调用 CreateEvent 创建。 更新异步邀请的状态时,会发出事件信号。 若要获取响应数据,请调用 PeerCollabGetInvitationResponse

如果未提供事件,调用方必须通过调用 PeerCollabGetInvitationResponse 轮询结果。

[optional] phInvitation

指向已发送邀请句柄的指针。 如果指定 了 NULL ,框架将在收到邀请响应后清理响应信息。 如果 NULL 不是提供的邀请的指定句柄,则必须通过调用 PeerCollabCloseHandle 将其关闭。

返回值

如果函数成功,则返回S_OK。 否则,该函数将返回以下值之一。

返回代码 说明
E_OUTOFMEMORY
没有足够的内存来支持此操作。
E_INVALIDARG
其中一个参数无效。
E_NOTIMPL
pcEndpointNULL
PEER_E_NOT_INITIALIZED
未初始化 Windows 对等基础结构。 需要调用相关的初始化函数。

注解

此 API 可确保接收邀请的对等方是指定为输入的联系人。 如果指定的终结点上不存在特定联系人,则连接将失败。 建议使用 PeerCollabAsyncInviteContact 代替不太安全的 PeerCollabAsyncInviteEndpoint

对于邀请的收件人,将显示一个 Toast。 此 Toast 将转换为用户可以接受或拒绝邀请的对话框。 成功接受邀请后,协作应用程序将启动在收件人的计算机上。

若要成功接收邀请,必须使用 PeerCollabRegisterApplication 在收件人的计算机上注册应用程序。 邀请的发送方也可能返回失败代码,因为收件人已关闭应用程序邀请。

如果发送邀请的联系人不接受邀请, PeerCollabGetInvitiationResponse 函数将返回PEER_E_CONNECTION_FAILED。

如果收件人仅接受来自受信任联系人的邀请,则必须将邀请的发件人添加到收件人计算机的联系人存储中。 在邀请尝试之前,必须将发件人添加到联系人存储中。 若要将联系人添加到联系人存储区,请调用 PeerCollabAddContact

若要取消未完成的邀请,请调用 PeerCollabCancelInvitation

要求

   
最低受支持的客户端 Windows Vista [仅限桌面应用]
最低受支持的服务器 无受支持的版本
目标平台 Windows
标头 p2p.h
Library P2P.lib
DLL P2P.dll

请参阅

PEER_CONTACT

PEER_ENDPOINT

PEER_INVITATION

对等协作 API 函数

PeerCollabAddContact

PeerCollabCancelInvitation

PeerCollabCloseHandle

PeerCollabGetAppLaunchInfo

PeerCollabGetInvitationResponse