> ## 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.

# packageutil.exe

> packageutil.exe

PackageUtil は、XVC、MSIXVC、および MSIXVC2 パッケージファイルの内容を検査、比較、および抽出します。

```text theme={null}
packageutil <command> [options]
```

## グローバルオプション

| オプション     | 説明                  |
| --------- | ------------------- |
| `/v`      | コンソールへの詳細出力を有効にします。 |
| `/?`、`/h` | ヘルプと使用情報を表示します。     |

## コマンド

* [`info`](#info) - パッケージメタデータを表示します。
* [`compare`](#compare) - 2 つのパッケージを比較して差異を報告します。
* [`license`](#license) - 署名キー情報を表示します。
* [`osinfo`](#osinfo) - game OS 情報を表示します。
* [`chunkinfo`](#chunkinfo) - チャンクの詳細を表示します。
* [`fileinfo`](#fileinfo) - ファイルの詳細を表示します。
* [`extract`](#extract) - パッケージからファイルを抽出します。
* [`set`](#set) - PackageUtil 設定を変更します。

## info

バージョン番号、ContentID、ProductID、GameOS バージョン、暗号化キー ID などのパッケージ情報を提供します。

```text theme={null}
packageutil info <packagefile>
```

### 引数

| 引数              | 説明                   |
| --------------- | -------------------- |
| `<packagefile>` | 検査するパッケージファイルを指定します。 |

## compare

ベースパッケージと更新されたパッケージを比較し、更新サイズと変更されたセグメントを含む差異を報告します。

```text theme={null}
packageutil compare <basepackagefile> <updatedpackagefile> [options]
```

### 引数

| 引数                     | 説明                    |
| ---------------------- | --------------------- |
| `<basepackagefile>`    | 更新比較用のベースパッケージを指定します。 |
| `<updatedpackagefile>` | 比較用の更新されたパッケージを指定します。 |

### オプション

| オプション        | 説明                     |
| ------------ | ---------------------- |
| `/quiet`     | サマリー情報のみを出力します。        |
| `/out <out>` | 比較レポートの出力ディレクトリを指定します。 |

PackageUtil は、ベースパッケージから更新されたパッケージに更新するときにダウンロードされるコンテンツの HTML レポートを生成します。レポートには推定更新ダウンロードサイズが含まれます。

両方のパッケージが `/lk` 暗号化または既定の暗号化モードを使用している必要があります。`/l` は使用しないでください。一意のコンテンツライセンスを使用するパッケージに対しては比較結果が正確でないためです。

## license

パッケージで使用されている署名キーに関する情報を表示します。EKB ファイルがパッケージと一致するかどうかを確認することもできます。

コマンドは次のいずれかの値を報告します。

* Submission signed (`/l`) - Partner Center への提出のみ。
* Test signed (`/lt`) - サイドロードが有効で、安全でない方法で暗号化されています。

<Note>
  現在、`packageutil license` は `/lk` 署名パッケージを `/l` 署名パッケージとして報告します。
</Note>

```text theme={null}
packageutil license <packagefile> [<ekbfile>]
```

### 引数

| 引数              | 説明                                                                                                  |
| --------------- | --------------------------------------------------------------------------------------------------- |
| `<packagefile>` | 検査するパッケージファイルを指定します。                                                                                |
| `<ekbfile>`     | オプションで、パッケージに対してチェックする EKB ファイルを指定します。認定前に、このチェックを使用して認定されるパッケージに関連付けられている EKB ファイルを提供していることを確認します。 |

## osinfo

GUID と 4 部構成のバージョン番号を含む、game OS に関する情報を提供します。

```text theme={null}
packageutil osinfo <gameos>
```

### 引数

| 引数         | 説明                       |
| ---------- | ------------------------ |
| `<gameos>` | 検査する game OS ファイルを指定します。 |

## chunkinfo

チャンク ID、チャンクサイズ、および Intelligent Delivery 指定子を含む、パッケージ内のチャンクに関する情報を提供します。

```text theme={null}
packageutil chunkinfo <packagefile>
```

### 引数

| 引数              | 説明                   |
| --------------- | -------------------- |
| `<packagefile>` | 検査するパッケージファイルを指定します。 |

## fileinfo

ファイル名、サイズ、およびセグメントの詳細を含む、パッケージ内のファイルに関する情報を提供します。

```text theme={null}
packageutil fileinfo <packagefile> [options]
```

### 引数

| 引数              | 説明                   |
| --------------- | -------------------- |
| `<packagefile>` | 検査するパッケージファイルを指定します。 |

## extract

パッケージから 1 つ以上のファイルを出力ディレクトリに抽出します。

<Note>
  Extract は MSIXVC2 パッケージでのみサポートされます。
</Note>

<Note>
  Extract は暗号化されていないパッケージからのみ抽出できます。たとえば、XBOX CDN 上のパッケージファイルからは抽出できません。
</Note>

```text theme={null}
packageutil extract /package <packagefile> /out <outputdir> [options]
```

### オプション

| オプション                | 説明                                          |
| -------------------- | ------------------------------------------- |
| `/package <package>` | MSIXVC2 パッケージファイルを指定します。                    |
| `/file <file>`       | 抽出する 1 つのファイルを指定します。省略した場合、すべてのファイルが抽出されます。 |
| `/out <out>`         | **(必須)** 出力ディレクトリを指定します。                    |

**使用例:**

```text theme={null}
packageutil extract /package MyGame.msixvc /out extracted_files
```

## set

PackageUtil 設定を変更します。現在のデバイスで MSIXVC2 開発者モードをオンまたはオフに切り替えるには `set msixvc2` を使用します。

```text theme={null}
packageutil set msixvc2 <on|off>
```

このコマンドは管理者コマンドプロンプトから実行してください。

## ミドルウェアやカスタムツール用の JSON 出力

`compare` を実行すると、PackageUtil は HTML レポートと共に JSON コンパニオンファイルを作成します。ミドルウェア、エンジン、カスタムツールは、このファイルを使用してパッケージレイアウトを検査したり、パッケージバイナリ内のファイルを見つけたり、アライメントを検証したり、パッケージをアンパックせずに構造情報を抽出したりできます。

`fileinfo` コマンドも、機械処理に適した構造化された出力を生成します。

JSON 出力では、ファイルサイズを小さく保つために略記フィールド名を使用します。

| 略記名 | 完全な名前  | 説明                            |
| --- | ------ | ----------------------------- |
| `O` | Offset | パッケージファイル内のデータセグメントのバイトオフセット。 |
| `L` | Length | データセグメントのバイト単位の長さ。            |

## 関連トピック

[MSIXVC2 パッケージングの概要](/build/core-features/common/packaging/overviews/packaging-msixvc2-overview)

[Make package (makepkg.exe)](/build/core-features/common/packaging/deployment/makepkg)

[PC 向け MSIXVC2 の使い始め](/build/core-features/common/packaging/overviews/packaging-getting-started-for-PC-msixvc2)


## Related topics

- [PC 開発向けのコマンドライン ツール](/ja-jp/tools/tools-pc/commandlinetools/gr-commandlinetools-toc.md)
- [XBOX 環境のツールと API](/ja-jp/tools/tools-console/gc-xbox-tools-and-apis-toc.md)
- [ストリーミングインストール用のツール](/ja-jp/build/core-features/common/packaging/deployment/atoc-deployment-tools.md)
- [デプロイメント パッケージ スキーマとストリーミング インストール ツール](/ja-jp/build/core-features/common/packaging/deployment/index.md)
- [Make package (makepkg.exe)](/ja-jp/build/core-features/common/packaging/deployment/makepkg.md)
