Platform SDK: DirectX

DPLMSG_SETPROPERTY

DPLMSG_SETPROPERTY メッセージは、特定のプレーヤーのプロパティまたはセッションのプロパティが変更されたことをロビーに知らせるために、アプリケーションによりロビーに送信される。これらのプロパティには、プレーヤーのスコアや状態から、ゲームのカレント レベルやセッションの現在の状態までが含まれる。

typedef struct {
    DWORD    dwType;
    DWORD    dwRequestID
    GUID     guidPlayer;
    GUID     guidPropertyTag;
    DWORD    dwDataSize;
    DWORD    dwPropertyData[1];
} DPLMSG_SETPROPERTY, FAR *LPDPLMSG_SETPROPERTY;
dwType
メッセージを識別する。この値は、DPLSYS_SETPROPERTY である。
dwRequestID
データが認識されて適切に設定されたことを確認したい場合にアプリケーションにより指定される 0 以外の要求 ID。確認の必要がない場合は、これには DPL_NOCONFIRMATION が設定される。
guidPlayer
このプロパティが適用される (適用可能な場合) プレーヤーを識別する GUID。プロパティがプレーヤーに固有でない場合、このメンバには GUID_NULL が設定される。このアプリケーションにより生成されたプレーヤーの GUID は、DPLPROPERTY_PlayerGuid プロパティを要求することによりロビーから取得できる。
guidPropertyTag
設定されたプロパティを識別する GUID。このプロパティは「DirectPlay 定義済みプロパティ」に示している事前に定義された GUID のいずれかであるか、またはアプリケーションやロビーにより追加プロパティに独自の GUID を定義することもできる。
dwDataSize
プロパティ データのサイズ (バイト単位)。
dwPropertyData
プロパティ データが格納されている可変サイズのバッファ。プロパティ タグは、このデータの解釈方法を定義している。

注意

各プロパティは、GUID (アプリケーション開発者またはロビー開発者により定義される) により識別される。さまざまなアプリケーションのプロパティ GUID からその記述やデータ タイプへのマッピングを保持するのは、ロビーの役割である。ロビー サーバーは、情報に基づいて処理するようにも、それを無視するようにも選択できる。

このメッセージを構成するとき、アプリケーションは DPLMSG_SETPROPERTY 構造体と完全なプロパティ データを保持するのに十分なメモリを割り当てる必要がある。たとえば、プロパティ データで 52 バイトが必要な場合、アプリケーションは (sizeof(DPLMSG_SETPROPERTY) + 52) バイトを割り当て、それを LPDPLMSG_SETPROPERTY ポインタに割り当てる。

必要条件

  Windows NT/2000 : Windows 2000 が必要。
  Windows 95/98 : Windows 95 以降が必要。Windows 95 用に再配布可能な形で使用可能。
  ヘッダー : dplobby.h で宣言。

参照

DPLMSG_SETPROPERTYRESPONSE