Skip to main content
テストのため、ゲームはゲームへのユーザー追加を自動化したい場合があります。Microsoft Game Development Kit (GDK) では、ユーザーはゲームが XUserAddAsync を呼び出したときにのみ追加されます。オートメーションに関して、この関数には次の 2 つの主な制限があります。
  • AddDefaultUserSilently フラグを指定して XUserAddAsync を呼び出す場合、UI は表示されません (オートメーションに役立ちます)。ただし、取得できるのはゲームを起動したユーザーのみです。このフラグを指定して API を繰り返し呼び出しても、結果は変わりません。同じユーザーの新しいハンドルを取得し続けるだけです。
  • AddDefaultUserSilently フラグを指定せずに XUserAddAsync を呼び出す場合、UI が表示され、誰かがボタンを押すのを待ちます。これはオートメーションを妨げます。
テスト コードでユーザーの追加のオートメーションを支援するため、Microsoft Game Development Kit (GDK) では、ユーザー入力を必要とする UI を表示せずにユーザーを追加できるヘッドレス オプションを有効にするサポートがあります。次の手順で基本的なアプローチを概説します。
  1. サインイン ユーザーをコンソールに追加するには、signin オプションを指定して xbuser (NDA トピック) コマンドライン ツールを使用できます。各ユーザーに対してこの手順を繰り返します。
  2. ゲームでユーザーを追加するときに通常表示される UI を抑制するには、次のように HeadlessXuser オプションを指定して xbconfig (NDA トピック) コマンドライン ツールを使用できます。
  1. ゲームを起動します。
  2. ゲーム内では、AddDefaultUserSilently フラグを持たない XUserAddAsync の各呼び出しは、コンソールにサインインし、ゲームによって関連付けられた未処理の XUserHandle オブジェクトを持たない最初のユーザーを返します。
  3. ゲームが XUserAddAsync を呼び続けると、最終的にコンソールにサインインしているユーザーの数を使い果たします。この後、XUserAddAsyncE_ABORT を返します。これは、ユーザーがコンソールへのサインインをキャンセルした場合 (または UI から戻った場合) に XUserAddAsync が返すエラーとまったく同じです。
  4. テスト目的で、ゲームはコンソールにサインインしている テスト アカウント の数を知りたい場合があります。これを容易にするために、ゲームは CreateProcess を呼び出し、list オプションを指定して wduser コマンドライン ツールを起動できます。
最終更新日 2026年8月13日