XblMultiplayerManagerGameSessionSetSynchronizedProperties
XblMultiplayerSessionWriteMode::SynchronizedUpdate
を使用して、ゲーム セッションのカスタム プロパティの値を設定します。
構文
HRESULT XblMultiplayerManagerGameSessionSetSynchronizedProperties(
const char* name,
const char* valueJson,
void* context
)
パラメーター
name _In_z_
型: char*
設定するカスタム プロパティの名前。
valueJson _In_z_
型: char*
JSON 文字列としてプロパティに割り当てる値。
context _In_opt_
型: void*
省略可能。 開始呼び出しに XblMultiplayerEvent を関連付けるためのアプリケーション定義データ。
戻り値
型: HRESULT
この API 操作の HRESULT 結果コード。
解説
この関数は、ゲーム セッションのカスタム プロパティの JSON 文字列として表される値を設定します。 カスタム プロパティはいつでも変更できます。 カスタム プロパティがデバイス間で共有されている場合、または複数のデバイスによって同時に更新される可能性がある場合は、この関数を使用して、原子性を確保し、それらのカスタム プロパティの値を変更しながらデバイス間の競合を解決します。 カスタム プロパティがデバイス間で共有されていない場合は、代わりに XblMultiplayerManagerGameSessionSetProperties 関数を使用して、そのカスタム プロパティの値を変更します。
競合が原因で競合状態が発生した場合、サービスはカスタム プロパティの変更要求を拒否する場合があります。 要求が拒否された場合、サービスは HTTP_E_STATUS_PRECOND_FAILED
を返します。 競合が発生した場合は、カスタム プロパティを変更する必要性を再評価し、必要に応じて、この関数を再度呼び出して要求を再送信します。
この関数の結果は、イベントの種類が XblMultiplayerEventType::SessionSynchronizedPropertyWriteCompleted
に設定されたマルチプレイヤー イベントとして配信されます。
XblMultiplayerManagerDoWork を呼び出して、マルチプレイヤー イベントを取得できます。
要件
ヘッダー: multiplayer_manager_c.h
ライブラリ: Microsoft.Xbox.Services.14x.GDK.C.lib
関連項目
multiplayer_manager_c
XblMultiplayerManagerGameSessionSetSynchronizedHost
XblMultiplayerEvent