次の方法で共有


PeerGroupOpenDirectConnection 関数 (p2p.h)

PeerGroupOpenDirectConnection 関数は、ピア グループ内の別のピアとの直接接続を確立します。

構文

NOT_BUILD_WINDOWS_DEPRECATE HRESULT PeerGroupOpenDirectConnection(
  [in]  HGROUP        hGroup,
  [in]  PCWSTR        pwzIdentity,
  [in]  PPEER_ADDRESS pAddress,
  [out] ULONGLONG     *pullConnectionId
);

パラメーター

[in] hGroup

直接接続をホストするピア グループへのハンドル。 このハンドルは、 PeerGroupCreatePeerGroupOpen、または PeerGroupJoin 関数によって返されます。 このパラメーターは必須です。

[in] pwzIdentity

ピアが接続する ID を含む Unicode 文字列へのポインター。 このパラメーターは必須です。

[in] pAddress

ピア が接続 する IPv6 アドレスを含むPEER_ADDRESS構造体へのポインター。 このパラメーターは必須です。

[out] pullConnectionId

直接接続を識別する符号なし 64 ビット整数。 この ID 値は、 PEER_GROUP_EVENT_DIRECT_CONNECTION イベントが発生し、接続が他のピアによって受け入れられたことを示すまで有効であると見なすことはできません。 このパラメーターは必須です。

戻り値

操作 が成功した場合S_OK を返します。 それ以外の場合、関数は次のいずれかの値を返します。

リターン コード 説明
E_INVALIDARG
パラメーターの 1 つが無効です。
E_OUTOFMEMORY
操作を完了するのに十分なメモリがありません。
PEER_E_CONNECT_SELF
接続はループバックであるため失敗しました。つまり、接続はピアとそれ自体の間にあります。
PEER_E_NO_KEY_ACCESS
ピア ID またはピア グループ キーへのアクセスは拒否されます。 これは通常、ユーザーまたはコンピューター キーを含むフォルダーのアクセス制御リスト (ACL) が正しくないことが原因で発生します。 これは、ACL が手動でリセットされた場合に発生する可能性があります。
 

暗号化固有のエラーは、 Microsoft RSA ベース プロバイダーから返すことができます。 これらのエラーの前には CRYPT_* が付き、Winerror.h で定義されています。

解説

この関数で開かれたすべての直接接続は、DATA 構造体 PEER_GROUP_EVENT 、そのコンポーネントPEER_EVENT_CONNECTION_CHANGE_DATA構造体の 状態 メンバー を PEER_CONNECTION_FAILED に設定して閉じる必要があります。

要件

   
サポートされている最小のクライアント WINDOWS XP と SP2 [デスクトップ アプリのみ]、Windows XP SP1 と Advanced Networking Pack forWindows XP
サポートされている最小のサーバー サポートなし
対象プラットフォーム Windows
ヘッダー p2p.h
Library P2P.lib
[DLL] P2P.dll

関連項目

PEER_ADDRESS

PEER_EVENT_CONNECTION_CHANGE_DATA

データのPEER_GROUP_EVENT

PEER_GROUP_EVENT_DIRECT_CONNECTION

PeerGroupCloseDirectConnection

PeerGroupCreate

PeerGroupJoin

PeerGroupOpen

PeerGroupSendData