> ## Documentation Index
> Fetch the complete documentation index at: https://devdocs.xbox.com/llms.txt
> Use this file to discover all available pages before exploring further.

# XStore 開発のトラブルシューティング

> XBOX ゲーム開発およびテスト中の一般的な XStore API 問題 (エンタイトルメント、サンドボックス、PC のサインイン問題を含む) のトラブルシューティングを行います。

## エンタイトルメント

エンタイトルメントがプレイヤーの購入活動と一致しない場合、次の状況を確認してください。

* PC の開発サンドボックスでテストしている場合、XBOX テスト アカウントは Microsoft Store にサインインする前に XBOX App にサインインする必要があります。テスト アカウントが最初に Microsoft Store にサインインすると、Microsoft Store は既定で RETAIL 環境を使用します。
* 予約購入のエンタイトルメントはリリース日まで非アクティブで、クライアント ベースのエンタイトルメント クエリでは返されません。
* テスト アカウントが単一のサンドボックス内での購入に制限されていることを確認してください。アカウントに複数のサンドボックス内のエンタイトルメントがある場合、collections サービスは無効な結果を返す可能性があります。
* コンソールの開発サンドボックスでテストしている場合、Microsoft Store の製品詳細ページで **\[入手]** ボタンを選択したとき、またはゲームが [XStoreShowPurchaseUIAsync](/reference/system/xstore/xstore_members) を呼び出したときに、無料製品に対するエンタイトルメントが即座に付与されます。購入が中止された場合でもエンタイトルメントは付与されます。自動エンタイトルメント付与を回避するには、サンドボックスにゼロ以外の価格でアドオン コンテンツを公開してください。

エンタイトルメントの詳細については、[プレイヤーにアドオン コンテンツへのアクセスを付与する](/publishing/xstore-commerce/xstore-granting-access)を参照してください。

## ライセンス供与

プレイヤーが所有していないコンテンツに対してライセンスが取得される場合は、デバイス上でライセンス共有またはキャッシュが発生していないことを確認してください。

* ライセンス共有とキャッシュにより、テスト マシンがクリーンでない状態になることがあります。
  * デバイスからアカウントを削除しても、その「オフライン」指定は削除されません。オフライン対応のライセンスは、指定が変更されるかライセンスが期限切れになるまで、他のアカウントと引き続き共有されます。
  * PC に新しいアカウントを追加すると、そのアカウントに対して「オフライン権限」設定が自動的に有効化される場合があり、予期しないライセンス共有が発生する可能性があります。
* クリーンな PC 環境を確保するには、常に新しい仮想マシンでテストしてください。
* コンソールをクリーンな状態に戻すには、次の手順を試してください。
  * デバイスからテスト アカウントを削除する前に、各テスト アカウントに対して \[ホーム XBOX] (**\[設定]** > **\[全般]** > **\[個人用設定]** > **\[マイ ホーム XBOX]**) を無効にします。
  * 古いアカウントのデバイス指定を削除するために \[ホーム XBOX をリセット] (**\[設定]** > **\[開発者]** > **\[開発者設定]**) を複数回 (15 回以上) 実行し、その後コンソールを再起動します。
  * ライセンスが引き続き共有される場合、工場出荷時リセットが必要になる場合があります。

ライセンス供与の詳細については、[プレイヤーにアドオン コンテンツへのアクセスを付与する](/publishing/xstore-commerce/xstore-granting-access)を参照してください。

## DLC (パッケージを含む耐久型) がインストールされているのに `XPackageRegisterPackageInstalled` で割り当てたコールバックが実行されない

DLC のインストール状態が明らかでない場合は、まず `xbapp listdlc` または `wdapp listdlc` を確認し、期待される DLC が一覧に表示されているかを確認してください。

次に、DLC の microsoftgame.config の `AllowedProduct` が、ベース ゲームの microsoftgame.config の `StoreId` ノードと一致することを確認してください。

この DLC が Smart Delivery 製品で、XBOX Series X/S ベース ゲームが ERA DLC パッケージを使用しており、ERA DLC の appxmanifest の `AllowedProduct` が XBOX Series X/S ベース ゲームに割り当てられている製品 ID (`xbapp list /d`) と同じでない場合、製品 ID をオーバーライドする必要がある場合があります。このオーバーライドは、パッケージ化されたビルドでのみ可能です。

```cmd theme={null}
makepkg pack /d <dir> /pd <dir> /contentid <contentid> /productid <product ID of ERA product> /productidoverride
```

この状況は、廃止された XBOX Developer Portal サイトから移行された XBOX One ベース ゲームで発生する可能性があります。

## PC の `XStoreShowPurchaseUIAsync` が短時間購入ダイアログを表示してから `E_ABORT` を返す

この問題は次の場合に発生する可能性があります。

* XStoreShowPurchaseUIAsync が昇格された (管理者) プロセスから呼び出されている。
* Visual Studio を管理者権限でデバッグしている、または \[管理者として実行] に設定されているプロセスから呼び出している。解決策は、管理者として実行中にこの API を呼び出さないことです。
* UAC (ユーザー アクセス制御) が対話型ユーザーのデスクトップに確認プロンプトを表示しないように設定されている。

UAC は、これらのレジストリ値によって制御されます。

`HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\EnableLUA` `HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Policies\System\PromptOnSecureDesktop`

`EnableLUA` は `1` である必要があります。場合によっては、`PromptOnSecureDesktop` を `0` に切り替えることも有効です。

この[ページ](https://learn.microsoft.com/windows/security/identity-protection/user-account-control/user-account-control-group-policy-and-registry-key-settings)には、これと他の関連するコントロールに関する詳細情報があります。

## XStore 関連のエラー コード

| 16 進値      | エラー                                     | 説明                                     |
| ---------- | --------------------------------------- | -------------------------------------- |
| 0x803F6300 | `XSTORE_E_NULL_LICENSE_SERVICE_CONTEXT` | ライセンス サービス コンテキストが利用できません。             |
| 0x803F6301 | `XSTORE_E_NULL_STORE_CONTEXT`           | ストア コンテキスト オブジェクトが null または初期化されていません。 |
| 0x803F6302 | `XSTORE_E_INVALID_ID`                   | 無効または不明な ID が渡されました。                   |
| 0x803F6303 | `XSTORE_E_INVALID_REQUEST`              | リクエストに無効なパラメーターまたは形式があります。             |
| 0x803F6304 | `XSTORE_E_INVALID_RESPONSE`             | ストア サービスからのレスポンスが予期しない、または無効なものです。     |
| 0x803F6305 | `XSTORE_E_ZERO_RESULTS`                 | ゼロ以外の結果が期待されていた場合に、ゼロの結果が返されました。       |
| 0x803F6306 | `XSTORE_E_NULL_INPUT_PARAMETER`         | 必須のパラメーターが null で指定されました。              |
| 0x803F6307 | `XSTORE_E_INVALID_INPUT_PARAMETER`      | 指定された入力パラメーターが無効です。                    |
| 0x803F6308 | `XSTORE_E_INVALID_VERSION`              | リクエストを行っているクライアントが必要な最小バージョンを満たしていません。 |
| 0x803F6309 | `XSTORE_E_BAD_CONVERSION`               | 必須のパラメーターまたはレスポンスを適切に変換できません。          |

## リファレンス API ドキュメント

* [XStore (API の内容)](/reference/system/xstore/xstore_members)
  * 関数
    * [XStoreShowPurchaseUIAsync](/reference/system/xstore/xstore_members)

## 関連項目

[コマースの概要](/publishing/xstore-commerce/xstore-commerce-overview)

[XStore 開発とテストの有効化](/publishing/xstore-commerce/xstore-product-testing-setup)

[XStore API リファレンス](/reference/system/xstore/xstore_members)


## Related topics

- [XStoreShowPurchaseUIAsync](/ja-jp/reference/system/xstore/functions/xstoreshowpurchaseuiasync.md)
- [プレイヤーにアドオン コンテンツへのアクセスを付与する](/ja-jp/publishing/xstore-commerce/xstore-granting-access.md)
- [トラブルシューティング](/ja-jp/services/xbox-services/develop/troubleshooting/index.md)
- [XBOX services のサインインのトラブルシューティング](/ja-jp/services/xbox-services/fundamentals/identity/auth/live-troubleshooting-sign-in.md)
- [ボイス チャットのトラブルシューティング](/ja-jp/services/playfab/community/voice-communications/concepts-audio-troubleshooting.md)
