Compartir a través de


Función PeerGroupPasswordJoin (p2p.h)

La función PeerGroupPasswordJoin prepara un elemento del mismo nivel con una invitación y la contraseña correcta para unirse a un grupo del mismo nivel protegido con contraseña antes de llamar a PeerGroupConnect o PeerGroupConnectByAddress.

Sintaxis

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGroupPasswordJoin(
  [in]  PCWSTR pwzIdentity,
  [in]  PCWSTR pwzInvitation,
  [in]  PCWSTR pwzPassword,
  [in]  PCWSTR pwzCloud,
  [out] HGROUP *phGroup
);

Parámetros

[in] pwzIdentity

Puntero a una cadena Unicode que contiene la identidad que abre el grupo del mismo nivel especificado. Si este parámetro es NULL, la implementación usa la identidad obtenida de PeerIdentityGetDefault.

[in] pwzInvitation

Puntero a una cadena Unicode que contiene la invitación XML concedida por otro elemento del mismo nivel. Se crea una invitación con una contraseña cuando el elemento del mismo nivel que invita llama a PeerGroupCreatePasswordInvitation. Se pueden obtener detalles específicos sobre esta invitación, incluida la contraseña establecida por el creador del grupo, como una estructura de PEER_INVITATION_INFO llamando a PeerGroupParseInvitation. Este parámetro es obligatorio.

[in] pwzPassword

Puntero a una cadena Unicode terminada en cero que contiene la contraseña necesaria para validar y unirse al grupo del mismo nivel. Esta contraseña debe coincidir con la contraseña especificada en la invitación. Este parámetro es obligatorio.

[in] pwzCloud

Puntero a una cadena Unicode que contiene el nombre de la nube PNRP donde se encuentra un grupo. El valor predeterminado es NULL, que indica que se debe usar la nube especificada en la invitación.

[out] phGroup

Puntero al identificador del grupo del mismo nivel. Para iniciar la comunicación con un grupo, llame a PeerGroupConnect. Este parámetro es obligatorio.

Valor devuelto

Devuelve S_OK si la operación se realiza correctamente. De lo contrario, la función devuelve uno de los valores siguientes.

Código devuelto Descripción
E_INVALIDARG
Uno de los parámetros no es válido.
E_OUTOFMEMORY
No hay suficiente memoria disponible para completar la operación.
PEER_E_CLOUD_NAME_AMBIGUOUS
La nube no se puede detectar de forma única, por ejemplo, más de una nube coincide con el nombre proporcionado.
PEER_E_INVALID_PEER_NAME
La identidad del mismo nivel especificada en pwzIdentity no es válida.
PEER_E_INVITATION_NOT_TRUSTED
El sistema del mismo nivel no confía en la invitación. Se ha modificado o contiene errores.
PEER_E_NO_CLOUD
No se puede encontrar la nube.
PEER_E_UNSUPPORTED_VERSION
La invitación no es compatible con la versión actual de la infraestructura del mismo nivel.
PEER_E_NO_KEY_ACCESS
Se deniega el acceso a la identidad del mismo nivel o a las claves del grupo del mismo nivel. Normalmente, esto se debe a una lista de control de acceso (ACL) incorrecta para la carpeta que contiene las claves de usuario o equipo. Esto puede ocurrir cuando la ACL se ha restablecido manualmente.
PEER_S_ALREADY_A_MEMBER
El elemento del mismo nivel local intentó unirse a un grupo basado en una contraseña más de una vez.
 

Los errores específicos de la criptografía se pueden devolver del proveedor base RSA de Microsoft. Estos errores tienen el prefijo CRYPT_* y se definen en Winerror.h.

Comentarios

En caso de asimetría de reloj entre las máquinas participantes, la función PeerGroupPasswordJoin inicial puede seguir siendo correcta mientras que la siguiente llamada de PeerGroupConnect puede dar lugar a un error al unirse en función de la gravedad del sesgo.

Requisitos

Requisito Value
Cliente mínimo compatible Windows XP con SP2 [solo aplicaciones de escritorio],Windows XP con SP1 con advanced Networking Pack forWindows XP
Servidor mínimo compatible No se admite ninguno
Plataforma de destino Windows
Encabezado p2p.h
Library P2P.lib
Archivo DLL P2P.dll

Consulte también

PeerGroupConnect

PeerGroupConnectByAddress