PeerGraphOpen, fonction (p2p.h)
La fonction PeerGraphOpen ouvre un graphique d’homologue créé précédemment par le nœud local ou un nœud distant. Un handle au graphe homologue est retourné, mais aucune connexion réseau n’est établie.
Syntaxe
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGraphOpen(
[in] PCWSTR pwzGraphId,
[in] PCWSTR pwzPeerId,
[in] PCWSTR pwzDatabaseName,
[in] PPEER_SECURITY_INTERFACE pSecurityInterface,
[in] ULONG cRecordTypeSyncPrecedence,
[in] const GUID *pRecordTypeSyncPrecedence,
[out] HGRAPH *phGraph
);
Paramètres
[in] pwzGraphId
Spécifie l’ID du graphique homologue à ouvrir. Cet identificateur doit être identique à l’ID utilisé dans l’appel à PeerGraphCreate.
[in] pwzPeerId
Spécifie l’ID unique de l’homologue ouvrant le graphique.
[in] pwzDatabaseName
Spécifie le nom de la base de données associée à ce graphe homologue au moment où le graphique a été créé ou ouvert pour la première fois.
[in] pSecurityInterface
Spécifie le fournisseur de sécurité pour un graphique d’homologue. Ce paramètre doit spécifier la même valeur que le pSecurityInterface spécifié dans l’appel d’origine à PeerGraphCreate.
[in] cRecordTypeSyncPrecedence
Spécifie le nombre de types d’enregistrements dans le paramètre pRecordTypeSyncPrecedence .
[in] pRecordTypeSyncPrecedence
Pointe vers un tableau de types d’enregistrements. Ce tableau spécifie l’ordre dans lequel les enregistrements des types d’enregistrements spécifiés sont synchronisés. L’ordre peut être égal à zéro (0) à N, où 0 est le premier type d’enregistrement à synchroniser. Si aucun type d’enregistrement n’est spécifié dans le tableau, il est synchronisé dans l’ordre par défaut après la synchronisation des types spécifiés dans le tableau.
Spécifiez NULL pour utiliser l’ordre par défaut. Ce paramètre doit être NULL si cRecordTypeSyncPrecedence est égal à zéro (0).
[out] phGraph
Reçoit un handle pour le graphique d’homologue ouvert. Lorsque ce handle n’est pas requis ou nécessaire, libérez-le en appelant PeerGraphClose.
Valeur retournée
Retourne S_OK si une base de données existante a été correctement ouverte. Sinon, la fonction retourne l’une des valeurs suivantes :
Code de retour | Description |
---|---|
|
L’un des paramètres n’est pas valide. |
|
La mémoire est insuffisante pour effectuer l’opération spécifiée. |
|
Une base de données existante est introuvable et une nouvelle base de données est créée avec succès. Si une base de données existante est trouvée et ouverte avec succès, S_OK est retournée. |
|
Le handle du graphique d’homologue n’est pas valide. |
|
Le graphe homologue doit être initialisé à l’aide d’un appel à PeerGraphStartup avant d’utiliser cette fonction. |
Remarques
Si vous avez développé votre propre fournisseur de services partagés, votre application ne doit pas appeler l’API PeerGraphing pour accéder aux données de la base de données de graphique, car cela peut entraîner une situation d’interblocage. Au lieu de cela, l’application doit examiner une copie mise en cache des informations.
Une fois PeerGraphOpen appelé, une application peut s’abonner à des événements ou importer une base de données, ou les deux.
Tant qu’un graphique homologue n’est pas synchronisé au moins une fois, de nombreuses fonctions ne sont pas disponibles (par exemple , PeerGraphListen ou l’une des fonctions de gestion des enregistrements) et tous les appels effectués à ces fonctions échouent. Un graphique homologue est synchronisé au moins une fois quand l’une des opérations suivantes se produit :
- Un appel à PeerGraphOpen retourne S_OK, ce qui signifie qu’une base de données déjà synchronisée a été trouvée.
- La fonction PeerGraphCreate a été appelée.
- L’événement PEER_GRAPH_EVENT_STATUS_CHANGED a été déclenché et l’indicateur PEER_GRAPH_STATUS_SYNCHRONIZED du membre dwStatus a été défini.
Configuration requise
Condition requise | Valeur |
---|---|
Client minimal pris en charge | Windows XP avec SP2 [applications de bureau uniquement],Windows XP avec SP1 avec le pack de mise en réseau avancé pour Windows XP |
Serveur minimal pris en charge | Aucun pris en charge |
Plateforme cible | Windows |
En-tête | p2p.h |
Bibliothèque | P2PGraph.lib |
DLL | P2PGraph.dll |