Функция PeerIdentityCreate (p2p.h)
Функция PeerIdentityCreate создает новое удостоверение однорангового узла и возвращает его имя. Имя однорангового удостоверения должно передаваться во всех последующих вызовах функций однорангового Identity Manager, однорангового группирования или PNRP, которые работают от имени удостоверения однорангового узла. Имя удостоверения однорангового узла указывает, какое удостоверение однорангового узла используется.
Синтаксис
NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerIdentityCreate(
[in] PCWSTR pwzClassifier,
[in] PCWSTR pwzFriendlyName,
[in] HCRYPTPROV hCryptProv,
[out] PWSTR *ppwzIdentity
);
Параметры
[in] pwzClassifier
Указывает классификатор, добавляемый к имени опубликованного удостоверения однорангового узла. Эта строка является строкой Юникода и может иметь значение NULL. Эта строка может содержать только 150 символов, включая признак конца NULL .
[in] pwzFriendlyName
Указывает понятное имя удостоверения однорангового узла. Это строка Юникода, которая может иметь значение NULL. Эта строка может содержать только 256 символов, включая признак конца NULL . Если pwzFriendlyName имеет значение NULL, имя удостоверения является понятным. Понятное имя является необязательным и не обязательно должно быть уникальным.
[in] hCryptProv
Дескриптор поставщика служб шифрования (CSP), который содержит пару ключей AT_KEYEXCHANGE длиной не менее 1024 бит. Эта пара ключей используется в качестве основы для нового однорангового удостоверения. Если значение hCryptProv равно нулю (0), для однорангового удостоверения создается новая пара ключей.
[out] ppwzIdentity
Получает указатель на имя созданного удостоверения однорангового узла. Это имя должно использоваться во всех последующих вызовах функций однорангового Identity Manager, группирования одноранговых узлов или PNRP, которые работают от имени удостоверения однорангового узла. Возвращает значение NULL , если не удается создать удостоверение однорангового узла.
Возвращаемое значение
Если вызов функции завершается успешно, возвращаемое значение будет S_OK. В противном случае возвращается одно из следующих значений.
Код возврата | Описание |
---|---|
|
Дескриптор ключа, указанного в hCryptProv , недопустим. |
|
Один из параметров недопустим. |
|
Недостаточно памяти для выполнения указанной операции. |
|
Удостоверение однорангового узла уже существует. Возникает, только если удостоверение однорангового узла на основе указанного ключа и классификатора уже существует. |
|
Доступ к удостоверению однорангового узла или ключам группы одноранговых узлов запрещен. Как правило, это вызвано неправильным списком управления доступом (ACL) для папки, содержащей ключи пользователя или компьютера. Это может произойти, если список ACL был сброшен вручную. |
|
Удостоверение однорангового узла не может быть создано из-за слишком большого количества удостоверений одноранговых узлов. |
Комментарии
Пара ключей и классификатор используются для создания имени однорангового узла нового удостоверения однорангового узла. После создания однорангового удостоверения оно автоматически сохраняется на диске.
Имя удостоверения должно быть освобождено с помощью PeerFreeData. Это не приведет к удалению удостоверения однорангового узла. Чтобы удалить удостоверение, используйте функцию PeerIdentityDelete .
Если hCryptProv не имеет значение NULL, его можно освободить с помощью CryptReleaseContext после возврата вызова.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows XP с пакетом обновления 2 (SP2) [только классические приложения], Windows XP с пакетом обновления 1 (SP1) с дополнительным сетевым пакетом для Windows XP |
Минимальная версия сервера | Ни одна версия не поддерживается |
Целевая платформа | Windows |
Header | p2p.h |
Библиотека | P2P.lib |
DLL | P2P.dll |