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

# Microsoft GDK のセットアップ ペイロードの抽出

> 抽出された Microsoft Game Development Kit (GDK) のセットアップ ペイロードを入手するプロセスについて説明します。

このドキュメントでは、インストールせずに利用するために、抽出された Microsoft Game Development Kit (GDK) を入手するプロセスについて説明します。このセクションでは、GDK と Windows SDK に対してこれを行う方法の手順を示します。このプロセスは上級ユーザー向けです。

> [!NOTE]
>
> このプロセスは、ほとんどのシナリオで Microsoft Game Development Kit (GDK) をインストールする必要性に代わるものではありません。このプロセスにより、次のシナリオが可能になります。
>
> 1. ビルド プロセスで使用するヘッダーとライブラリを抽出する。
> 2. Microsoft Game Development Kit (GDK) 全体をインストールせずに、特定の Microsoft Game Development Kit (GDK) から [xbprovision (NDA トピック)](https://learn.microsoft.com/en-us/gaming/gdk/docs/tools/tools-console/commandlinetools/xbprovision) を実行できるように、Sideload フォルダーを抽出する。
>
> この方法でセットアップ ペイロードを抽出した後に Microsoft Game Development Kit (GDK) の一部のツールを実行することは可能ですが、これは公式にはサポートされておらず、問題が発生する可能性があります。

## 抽出された Microsoft Game Development Kit のダウンロード

抽出された Microsoft Game Development Kit (GDK) は上級ユーザー向けのオプションで、Microsoft Game Development Kit (GDK) 全体をインストールせずに、特定のファイルをビルド システムに統合できます。抽出された Microsoft Game Development Kit (GDK) は、[XBOX Developer Downloads](https://aka.ms/gdkdl) サイトで個別のダウンロード オプションとして入手できます。このダウンロード オプションは、GDK インストーラーのダウンロード オプションと区別するために、タイトルに Extracted という単語が含まれた状態で一覧表示されます。

> [!TIP]
>
> このダウンロード オプションを使用すると、Microsoft Game Development Kit の手動抽出プロセスを省略できます。これが推奨されるオプションです。

## Microsoft Game Development Kit の手動抽出

抽出された Microsoft Game Development Kit (GDK) をダウンロードする代わりに、通常の Microsoft Game Development Kit (GDK) インストーラーからファイルを手動で抽出できます。通常の Microsoft Game Development Kit (GDK) をダウンロードした後、Windows インストーラー (msiexec.exe) を使用して各インストーラー パッケージを抽出し、個々のファイルにアクセスできます。

> [!TIP]
>
> 次の手順では、Windows インストーラー (msiexec.exe) の特定の使用方法を示します。msiexec.exe の詳細については、[Windows インストーラー](https://learn.microsoft.com/windows/desktop/Msi/windows-installer-portal)を参照してください。

### すべての Microsoft Game Development Kit (GDK) MSI の内容の抽出 (ExtractXboxOneDKs.ps1 を使用)

1. [XBOX Developer Downloads](https://aka.ms/gdkdl) サイトで Microsoft Game Development Kit インストーラーをダウンロードします。または、[GitHub リポジトリ](https://github.com/microsoft/GDK)からパブリックの Microsoft Game Development Kit (GDK) インストーラーをダウンロードします (PC 開発のみをサポート)。
   ダウンロードするファイルには、*GDK\_03\_2022.zip* などの名前が付いています。コンピューター上のその場所をメモしておきます。
2. ローカルの .zip ファイルの内容を抽出します。
3. PowerShell プロンプトを開き、内容を抽出したフォルダー内の **SetupScripts** ディレクトリ (C:\GDKDownload\SetupScripts など) に移動します。
   * このディレクトリにある ExtractXboxOneDKs.ps1 スクリプトを使用して GDK を抽出できます。使用方法は次のとおりです。
     * `.\ExtractXboxOneDKs.ps1 -SourcePath <MSI_Source_Folder> -TargetDirectory <Target_Directory>`
     * たとえば、SourcePath は .zip ファイルを抽出した場所 (C:\GDKDownload など) です。TargetDirectory は抽出された内容の格納先 (C:\ExtractedGDK\220300 など) です。
4. ExtractXboxOneDKs.ps1 スクリプトを実行すると、抽出されたファイルがターゲット ディレクトリ (C:\ExtractedGDK\220300 など) に配置されます。
5. ターゲット ディレクトリに移動し、抽出された GDK ファイルをビルド システムで必要な場所にコピーします。

> [!NOTE]
>
> ターゲット ディレクトリには、抽出の一部として一連の .msi ファイルと Windows Kits フォルダーが含まれます。これらは無視してかまいません。削除することもできます。抽出ターゲット ディレクトリ内で保持する必要があるフォルダーは、Microsoft GDK フォルダーのみです。

### すべての Microsoft Game Development Kit (GDK) MSI の内容の抽出 (手動)

1. GDK を解凍した後 (前のセクションの手順 1 から 2)、Windows インストーラー (msiexec.exe) を使用して各インストーラー パッケージを抽出し、個々のファイルにアクセスできます。
2. コマンド プロンプト ウィンドウで、.zip ファイルから抽出したファイルがあるフォルダーに移動し、次のコマンド ラインを実行します。\


   ```cmd theme={null}
   for /F "delims=" %G in ('dir /b /s "installation_folder\*.msi"') DO (
   start /wait msiexec.exe /a "%G" TARGETDIR="msi_extraction_path" /qb
   )  
   ```

   ここで、**installation\_folder** は GDK のダウンロード ファイルへのパスで、**msi\_extraction\_path** は Windows インストーラー (.msi) ファイルの内容を抽出するフォルダーを指定します。例:\


   ```cmd theme={null}
   for /F "delims=" %G in ('dir /b /s "C:\GDKDownload\*.msi"') DO (
   start /wait msiexec.exe /a "%G" TARGETDIR="C:\ExtractedGDK\220300\" /qb
   )  
   ```

   > [!NOTE]
   >
   > このコード例をコマンド ラインから直接ではなくスクリプト内で使用する場合は、%G を %%G に置き換える必要があります。
3. msi\_extraction\_path に移動し、抽出された GDK ファイルをビルド システムで必要な場所にコピーします。

## Windows SDK の抽出

Windows SDK のセットアップ ペイロードの手動抽出は上級ユーザー向けのオプションで、Windows SDK 全体をインストールせずに、特定のファイルをビルド システムに統合できます。Windows SDK がシステムにインストールされている限り、抽出された Microsoft Game Development Kit (GDK) を使用するためにこの手順は必要ありません。

### すべての Windows SDK MSI の内容の抽出 (ExtractXboxOneDKs.ps1 を使用)

> [!NOTE]
>
> October 2023 GDK 以降、GDK には Windows 11 SDK (バージョン 10.0.22000.0) 以降が必要です。

1. [Windows デベロッパー センター](https://developer.microsoft.com/windows/downloads/windows-sdk/)から Windows SDK インストーラーをダウンロードします。ダウンロードするファイルには、winsdksetup.exe などの名前が付いています。コンピューター上のその場所をメモしておきます。

2. コマンド プロンプトを開き、exe をダウンロードしたディレクトリで **winsdksetup.exe /layout C:\WinSDKDownload** を実行します (これにより、exe から msi ファイルが抽出されます)。

3. UI の手順を進め、すべてのチェック ボックスをオンのままにして、すべてのファイルをダウンロードさせます。

4. **C:\WinSDKDownload** に移動して、.msi ファイルが存在することを確認します。

   > [!TIP]
   >
   > 別の方法として、Windows SDK の .ISO をダウンロードしてマウントすることもできます。これには、手順 1 から 4 で生成されるものと同じ .msi ファイルが含まれています。

5. 前述の「**すべての Microsoft Game Development Kit (GDK) MSI の内容の抽出 (ExtractXboxOneDKs.ps1 を使用)**」で説明したスクリプトを使用し、SourcePath には msi フォルダー (C:\WinSDKDownload など) を、TargetDirectory には抽出された内容の格納先となる別のフォルダー (C:\ExtractedWinSDK など) を指定します。

   > [!NOTE]
   >
   > 含まれるファイルのパスが長いため、ソース ディレクトリとターゲット ディレクトリ (抽出時のみ) は 45 文字 (ドライブ文字を含む) 以内に制限することをお勧めします。抽出の完了後に移動できます。**フォルダー パスが 45 文字を超えると、ファイル パスの最大長を超えるため抽出が失敗します**。

6. ExtractXboxOneDKs.ps1 スクリプトを実行すると、抽出されたファイルがターゲット ディレクトリ (C:\ExtractedWinSDK など) に配置されます。

7. ターゲット ディレクトリに移動し、抽出された Windows SDK ファイルをビルド システムで必要な場所にコピーします。

   > [!NOTE]
   >
   > この抽出の後、ターゲット ディレクトリには多くのファイルやフォルダーが存在します。この例では、Windows Kits\10 フォルダーをビルド システムの参照先として使用しています。目的の操作によっては、他のフォルダーが必要になる場合があります。

### すべての Windows SDK MSI の内容の抽出 (手動)

1. winsdksetup.exe から一連の .msi ファイルを取得した後 (前のセクションの手順 1 から 4)、Windows インストーラー (msiexec.exe) を使用して各インストーラー パッケージを抽出し、個々のファイルにアクセスできます。
2. コマンド プロンプト ウィンドウで、.zip ファイルから抽出したファイルがあるフォルダーに移動し、次のコマンド ラインを実行します。\


   ```cmd theme={null}
   for /F "delims=" %G in ('dir /b /s "installation_folder\*.msi"') DO (
   start /wait msiexec.exe /a "%G" TARGETDIR="msi_extraction_path" /qb
   )  
   ```

   ここで、**installation\_folder** は Windows SDK のダウンロード ファイルへのパスで、**msi\_extraction\_path** は Windows インストーラー (.msi) ファイルの内容を抽出するフォルダーを指定します。例:\


   ```cmd theme={null}
   for /F "delims=" %G in ('dir /b /s "C:\WinSDKDownload\*.msi"') DO (
   start /wait msiexec.exe /a "%G" TARGETDIR="C:\ExtractedWinSDK" /qb
   )  
   ```

   > [!NOTE]
   >
   > このコード例をコマンド ラインから直接ではなくスクリプト内で使用する場合は、%G を %%G に置き換える必要があります。
3. msi\_extraction\_path に移動し、抽出された Windows SDK ファイルをビルド システムで必要な場所にコピーします。

## 抽出された複数の Microsoft Game Development Kit (GDK) バージョンをサポートするための推奨レイアウト

Microsoft Game Development Kit を抽出する場合、このフォルダーは、タイトルのビルド時にアクセスされる共有の場所またはソース管理システムに配置されることが想定されています。複数のバージョンの Microsoft Game Development Kit (GDK) が必要になるシナリオもあります。このシナリオでは、抽出された複数の Microsoft Game Development Kit (GDK) バージョンのレイアウトについて、次のようにすることをお勧めします。

* ...\ExtractedGDK\211000\Microsoft GDK...
* ...\ExtractedGDK\220300\Microsoft GDK...

これにより、各バージョンのペイロード全体を配置できます。ビルド環境変数を使用してバージョンを切り替え、ビルドのコンパイル プロセスで使用されるものを定義することをお勧めします。

## 関連項目

[Microsoft Game Development Kit (GDK) をインストールせずにビルド環境を構成する](https://learn.microsoft.com/en-us/gaming/gdk/docs/gdk-dev/console-dev/usingwithoutinstall/build-environment-withoutinstall)

[Microsoft Game Development Kit (GDK) をインストールせずに使用する](https://docs.xbox.com/ja-jp/build/console-features/build-without-install/gc-usingwithoutinstall-toc.md)


## Related topics

- [Microsoft GDK をインストールせずに使用する (目次)](https://docs.xbox.com/ja-jp/build/console-features/build-without-install/gc-usingwithoutinstall-toc.md)
- [開発者環境のセットアップ (目次)](https://docs.xbox.com/ja-jp/home/setup-install/download-install.md)
- [Visual Studio ツールセットのセットアップ](https://docs.xbox.com/ja-jp/build/console-features/build-without-install/bwoi-vs-setup.md)
- [GSDK プロジェクトのセットアップ](https://docs.xbox.com/ja-jp/services/playfab/multiplayer/servers/server-sdks/unreal-gsdk/third-person-mp-example-gsdk-project-setup.md)
- [PlayFab 統合 SDK クイックスタートのセットアップ](https://docs.xbox.com/ja-jp/services/playfab/sdks/unified-sdk/quickstart-setup.md)
