Funzione PeerGroupPasswordJoin (p2p.h)
La funzione PeerGroupPasswordJoin prepara un peer con un invito e la password corretta per aggiungere un gruppo peer protetto da password prima di chiamare PeerGroupConnect o PeerGroupConnectByAddress.
Sintassi
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGroupPasswordJoin(
[in] PCWSTR pwzIdentity,
[in] PCWSTR pwzInvitation,
[in] PCWSTR pwzPassword,
[in] PCWSTR pwzCloud,
[out] HGROUP *phGroup
);
Parametri
[in] pwzIdentity
Puntatore a una stringa Unicode contenente l'identità che apre il gruppo di peer specificato. Se questo parametro è NULL, l'implementazione usa l'identità ottenuta da PeerIdentityGetDefault.
[in] pwzInvitation
Puntatore a una stringa Unicode contenente l'invito XML concesso da un altro peer. Viene creato un invito con una password quando il peer invito chiama PeerGroupCreatePasswordInvitation. Dettagli specifici relativi a questo invito, tra cui la password impostata dall'autore del gruppo, possono essere ottenuti come struttura PEER_INVITATION_INFO chiamando PeerGroupParseInvitation. Questo parametro è obbligatorio.
[in] pwzPassword
Puntatore a una stringa Unicode con terminazione zero che contiene la password necessaria per convalidare e aggiungere il gruppo di peer. Questa password deve corrispondere alla password specificata nell'invito. Questo parametro è obbligatorio.
[in] pwzCloud
Puntatore a una stringa Unicode contenente il nome del cloud PNRP in cui si trova un gruppo. Il valore predefinito è NULL, che indica che il cloud specificato nell'invito deve essere usato.
[out] phGroup
Puntatore all'handle del gruppo peer. Per avviare la comunicazione con un gruppo, chiamare PeerGroupConnect. Questo parametro è obbligatorio.
Valore restituito
Restituisce S_OK se l'operazione ha esito positivo. In caso contrario, la funzione restituisce uno dei valori seguenti.
Codice restituito | Descrizione |
---|---|
|
Uno dei parametri non è valido. |
|
Non è disponibile memoria sufficiente per completare l'operazione. |
|
Il cloud non può essere individuato in modo univoco, ad esempio più di un cloud corrisponde al nome specificato. |
|
L'identità peer specificata in pwzIdentity non è valida. |
|
L'invito non è attendibile dal peer. È stato modificato o contiene errori. |
|
Impossibile trovare il cloud. |
|
L'invito non è supportato dalla versione corrente dell'infrastruttura peer. |
|
L'accesso alle chiavi peer identity o peer group 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 è stato reimpostato manualmente. |
|
Il peer locale ha tentato di partecipare a un gruppo in base a una password più di una volta. |
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
In caso di un'inclinazione dell'orologio tra computer partecipanti, la funzione PeerGroupPasswordJoin iniziale può comunque avere esito positivo mentre la chiamata seguente di PeerGroupConnect può causare un errore di join a seconda della gravità dell'asimmetria.
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 |