Примечание
Для доступа к этой странице требуется авторизация. Вы можете попробовать войти или изменить каталоги.
Для доступа к этой странице требуется авторизация. Вы можете попробовать изменить каталоги.
Функция PeerGraphOpen открывает одноранговый граф, созданный ранее локальным или удаленным узлом. Возвращается дескриптор однорангового графа, но сетевое подключение не установлено.
Синтаксис
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
);
Параметры
[in] pwzGraphId
Указывает идентификатор открываемого однорангового графа. Этот идентификатор должен совпадать с идентификатором, используемым при вызове PeerGraphCreate.
[in] pwzPeerId
Указывает уникальный идентификатор однорангового узла, открывающего граф.
[in] pwzDatabaseName
Указывает имя базы данных, связанной с этим одноранговым графом на момент создания или открытия графа в первый раз.
[in] pSecurityInterface
Указывает поставщик безопасности для однорангового графа. Этот параметр должен указывать то же значение, что и pSecurityInterface , указанный в исходном вызове PeerGraphCreate.
[in] cRecordTypeSyncPrecedence
Указывает количество типов записей в параметре pRecordTypeSyncPrecedence .
[in] pRecordTypeSyncPrecedence
Указывает на массив типов записей. Этот массив задает порядок синхронизации записей указанных типов записей. Порядок может быть равен от нуля (0) до N, где 0 — это первый тип записи для синхронизации. Если тип записи не указан в массиве, он синхронизируется в порядке по умолчанию после синхронизации типов, указанных в массиве.
Укажите значение NULL , чтобы использовать порядок по умолчанию. Этот параметр должен иметь значение NULL, если cRecordTypeSyncPrecedence равно нулю (0).
[out] phGraph
Получает дескриптор открытого однорангового графа. Если этот дескриптор не требуется, освободите его, вызвав PeerGraphClose.
Возвращаемое значение
Возвращает S_OK, если существующая база данных была успешно открыта. В противном случае функция возвращает одно из следующих значений:
Код возврата | Описание |
---|---|
|
Один из параметров недопустим. |
|
Недостаточно памяти для выполнения указанной операции. |
|
Существующая база данных не найдена, и новая база данных успешно создана. Если существующая база данных успешно найдена и открыта, возвращается S_OK . |
|
Дескриптор однорангового графа недопустим. |
|
Одноранговый граф необходимо инициализировать с помощью вызова PeerGraphStartup перед использованием этой функции. |
Комментарии
Если вы разработали собственный поставщик общих служб, приложение не должно вызывать API PeerGraphing для доступа к данным в базе данных графирования, так как это может привести к взаимоблокировке. Вместо этого приложение должно искать кэшированную копию сведений.
После вызова PeerGraphOpen приложение может подписаться на события или импортировать базу данных или и то, и другое.
Пока одноранговый граф не будет синхронизирован хотя бы один раз, многие функции недоступны (например, PeerGraphListen или любая из функций управления записями), и все вызовы этих функций завершаются ошибкой. Одноранговый граф синхронизируется по крайней мере один раз, когда происходит одно из следующих действий:
- Вызов PeerGraphOpen возвращает S_OK, что означает, что уже синхронизированная база данных найдена.
- Была вызвана функция PeerGraphCreate .
- Событие PEER_GRAPH_EVENT_STATUS_CHANGED активировано, и установлен флаг PEER_GRAPH_STATUS_SYNCHRONIZED элемента dwStatus .
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP с пакетом обновления 2 (SP2) [только классические приложения], Windows XP с пакетом обновления 1 (SP1) с дополнительным сетевым пакетом для Windows XP |
Минимальная версия сервера | Ни одна версия не поддерживается |
Целевая платформа | Windows |
Header | p2p.h |
Библиотека | P2PGraph.lib |
DLL | P2PGraph.dll |