Condividi tramite


Funzione PeerGroupCreateInvitation (p2p.h)

La funzione PeerGroupCreateInvitation restituisce una stringa XML che può essere usata dal peer specificato per aggiungere un gruppo.

Sintassi

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

Parametri

[in] hGroup

Gestire il gruppo peer per il quale viene emesso questo invito. Questo handle viene restituito dalla funzione PeerGroupCreate, PeerGroupOpen o PeerGroupJoin . Questo parametro è obbligatorio.

[in] pwzIdentityInfo

Puntatore a una stringa Unicode contenente il BLOB XML (incluso il GMC) restituito da una chiamata precedente a PeerIdentityGetXML con l'identità del peer. In alternativa, questo parametro può contenere un puntatore a un BLOB XML generato da PeerIdentityGetXML usando le informazioni peer contenute in PEER_CONTACT per generare un invito per un contatto peer.

[in] pftExpiration

Specifica una struttura FILETIME UTC contenente la data e l'ora di scadenza dell'invito. Questo valore non può essere maggiore della durata rimanente del peer di emissione. Se questo parametro è NULL, la durata dell'invito è impostata sul valore massimo possibile: la durata rimanente del peer.

[in] cRoles

Specifica il conteggio dei ruoli in pRoleInfo.

[in] pRoles

Puntatore a un elenco di GUID che specifica il set combinato di ruoli disponibili. I ruoli disponibili sono i seguenti.

Valore Significato
PEER_GROUP_ROLE_ADMIN
Questo ruolo può emettere inviti, rilasciare credenziali e rinnovare il GMC di altri amministratori, nonché il comportamento come membro del gruppo peer.
PEER_GROUP_ROLE_MEMBER
Questo ruolo può pubblicare record nel database del gruppo.

[out] ppwzInvitation

Puntatore a una stringa Unicode contenente l'invito dall'autorità emittente. Questo invito può essere passato a PeerGroupJoin dal destinatario per partecipare al gruppo di peer specificato. Per restituire i dettagli dell'invito come struttura PEER_INVITATION_INFO , passare questa stringa a PeerGroupParseInvitation. Per rilasciare questi dati, passare questo puntatore a PeerFreeData.

Valore restituito

Restituisce S_OK se l'operazione ha esito positivo; in caso contrario, la funzione restituisce uno dei valori seguenti.

Codice restituito Descrizione
E_INVALIDARG
Uno dei parametri non è valido.
E_OUTOFMEMORY
Memoria insufficiente per eseguire l'operazione specificata.
PEER_E_GROUP_NOT_READY
Il gruppo peer non è in uno stato in cui è possibile aggiungere record. Ad esempio, PeerGroupJoin viene chiamato, ma la sincronizzazione con il database del gruppo non è stata completata.
PEER_E_CHAIN_TOO_LONG
La catena GMC è più di 24 amministratori o membri. Per altre informazioni sulle catene GMC, vedere la documentazione relativa alla sicurezza del gruppo .
PEER_E_IDENTITY_DELETED
I dati passati come pwzIdentityInfo sono per un'identità eliminata e non più valida.
PEER_E_NOT_AUTHORIZED
Il peer che ha chiamato questo metodo non è un amministratore.
PEER_E_NO_KEY_ACCESS
L'accesso alle chiavi di gruppo di identità o peer viene negato. In genere, questo è causato da un elenco di controllo di accesso non corretto (ACL) per la cartella che contiene le chiavi utente o computer. Ciò può verificarsi quando l'ACL viene reimpostato manualmente.
 

Gli errori specifici della crittografia possono essere restituiti dal provider di base Microsoft RSA. Questi errori sono preceduti da CRYPT_* e definiti in Winerror.h.

Commenti

I peer non possono creare inviti per i peer il cui ruolo assunto è superiore al proprio. Ad esempio, un peer in un ruolo membro non può creare un invito per un peer in un ruolo di amministratore.

Requisiti

Requisito Valore
Client minimo supportato Windows XP con SP2 [solo app desktop], Windows XP con SP1 con Advanced Networking Pack forWindows XP
Server minimo supportato Nessuno supportato
Piattaforma di destinazione Windows
Intestazione p2p.h
Libreria P2P.lib
DLL P2P.dll

Vedi anche

PEER_CONTACT

PeerGroupParseInvitation

PeerIdentityGetXML