peerGroupCreateInvitation 函数 (p2p.h)
PeerGroupCreateInvitation 函数返回一个 XML 字符串,指定的对等方可以使用该字符串加入组。
语法
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGroupCreateInvitation(
[in] HGROUP hGroup,
[in] PCWSTR pwzIdentityInfo,
[in] FILETIME *pftExpiration,
[in] ULONG cRoles,
[in] const GUID *pRoles,
[out] PWSTR *ppwzInvitation
);
参数
[in] hGroup
发出此邀请的对等组的句柄。 此句柄由 PeerGroupCreate、 PeerGroupOpen 或 PeerGroupJoin 函数返回。 此参数是必需的。
[in] pwzIdentityInfo
指向 Unicode 字符串的指针,该字符串包含 XML blob (包括以前调用 PeerIdentityGetXML 返回的 GMC) ,该调用具有对等方的标识。 或者,此参数可以包含指向 PeerIdentityGetXML 生成的 XML Blob 的指针,该指针使用 PEER_CONTACT 中包含的对等信息生成对等联系人的邀请。
[in] pftExpiration
指定包含邀请到期的特定日期和时间的 UTC FILETIME 结构。 此值不能大于发证对等方的剩余生存期。 如果此参数为 NULL,则邀请生存期设置为可能的最大值 - 对等方的剩余生存期。
[in] cRoles
指定 pRoleInfo 中的角色计数。
[in] pRoles
指向 GUID 列表的指针,该列表指定组合的可用角色集。 可用角色如下所示。
值 | 含义 |
---|---|
|
此角色可以发出邀请、颁发凭据、续订其他管理员的 GMC,以及充当对等组的成员。 |
|
此角色可以将记录发布到组数据库。 |
[out] ppwzInvitation
指向包含颁发者邀请的 Unicode 字符串的指针。 此邀请可由收件人传递到 PeerGroupJoin ,以便加入指定的对等组。 若要以 PEER_INVITATION_INFO 结构的形式返回邀请的详细信息,请将此字符串传递给 PeerGroupParseInvitation。 若要释放此数据,请将此指针传递给 PeerFreeData。
返回值
如果操作成功,则返回S_OK;否则,函数将返回以下值之一。
返回代码 | 说明 |
---|---|
|
其中一个参数无效。 |
|
内存不足,无法执行指定的操作。 |
|
对等组未处于可以添加记录的状态。 例如,调用 PeerGroupJoin ,但尚未完成与组数据库的同步。 |
|
GMC 链超过 24 个管理员或成员。 有关 GMC 链的详细信息,请参阅 组安全性工作原理 文档。 |
|
作为 pwzIdentityInfo 传递的数据用于已删除的标识,不再有效。 |
|
调用此方法的对等方不是管理员。 |
|
拒绝访问标识或对等组密钥。 通常,这是由于包含用户或计算机密钥的文件夹的访问控制列表 (ACL) 不正确导致的。 手动重置 ACL 时可能会发生这种情况。 |
可以从 Microsoft RSA 基础提供程序返回特定于加密的错误。 这些错误以 CRYPT_* 为前缀,并在 Winerror.h 中定义。
注解
对等方不能为其假定角色优于自己的对等方创建邀请。 例如,成员角色中的对等方无法为管理员角色中的对等方创建邀请。
要求
要求 | 值 |
---|---|
最低受支持的客户端 | 带 SP2 的 Windows XP [仅限桌面应用],带 SP1 的 Windows XP 以及适用于 Windows XP 的高级网络包 |
最低受支持的服务器 | 无受支持的版本 |
目标平台 | Windows |
标头 | p2p.h |
Library | P2P.lib |
DLL | P2P.dll |