次の方法で共有


DPN_MSGID_DESTROY_PLAYER メッセージ

DPN_MSGID_DESTROY_PLAYER メッセージ

プレーヤがピアツーピア セッションまたはクライアント/サーバー セッションを抜けると、Microsoft® DirectPlay® は DPN_MSGID_DESTROY_PLAYER メッセージを生成する。

DPNMSG_DESTROY_PLAYER 構造体には、DPN_MSGID_DESTROY_PLAYER システム メッセージに関する情報が含まれる。

構文

typedef struct _DPNMSG_DESTROY_PLAYER {
    DWORD dwSize;
    DPNID dpnidPlayer;
    PVOID pvPlayerContext;
    DWORD dwReason;
}  DPNMSG_DESTROY_PLAYER, *PDPNMSG_DESTROY_PLAYER;

メンバ

  • dwSize
    この構造体のサイズ。
  • dpnidPlayer
    セッションから削除されるプレーヤの DPNID。
  • pvPlayerContext
    プレーヤのコンテキスト値。
  • dwReason
    プレーヤが破棄された理由を示す次のいずれかのフラグ。
    • DPNDESTROYPLAYERREASON_NORMAL
      プレーヤは通常の理由で削除される。
    • DPNDESTROYPLAYERREASON_CONNECTIONLOST
      接続が失われたため、プレーヤは削除される。
    • DPNDESTROYPLAYERREASON_SESSIONTERMINATED
      セッションが終了したため、プレーヤは削除される。
    • DPNDESTROYPLAYERREASON_HOSTDESTROYEDPLAYER
      ホストが IDirectPlay8Peer::DestroyPeer を呼び出したため、プレーヤは削除される。

注意

DPN_OK が含まれた、メッセージ コールバック関数からの戻り値。

クライアント/サーバー モードでは、サーバーだけがこのメッセージを受け取る。ピアツーピア モードでは、すべてのプレーヤがこのメッセージを受け取る。

サーバーがセッションを終了すると、サーバーは接続されているすべてのプレーヤの DPN_MSGID_DESTROY_PLAYER メッセージを受け取る。サーバーは接続解除することがわかっているため、これは通常の動作であり、関連する構造体の dwReason メンバは DPNDESTROYPLAYERREASON_NORMAL に設定される。DPNDESTROYPLAYERREASON_SESSIONTERMINATED 値は、予期しない接続解除に対してのみ設定される。

異なる複数のスレッドで DPN_MSGID_CREATE_PLAYER および DPN_MSGID_DESTROY_PLAYER メッセージを受け取ることがある。しかし、コールバック関数が DPN_MSGID_CREATE_PLAYER メッセージの受信から戻る前に DPN_MSGID_DESTROY_PLAYER メッセージを受け取ることはない。

メッセージの情報

ヘッダー dplay8.h
最低限のオペレーティング システム Windows 98、Pocket PC 2002