🎸

WinUI 3 アプリの msixbundle を作成する

2024/03/10に公開

はじめに

WinUI 3 アプリで msixbundle 形式のパッケージを作成する方法です。

デフォルトのテンプレートを使う場合と Template Studio を使う場合で、多少やり方が異なります。

デフォルトのテンプレートを使用する場合

アプリ作成

Visual Studio で WinUI 3 アプリのプロジェクトを新規作成します。

WinUI アプリのテンプレートは

  • 空のアプリ、パッケージ化(デスクトップの WinUI 3)
  • 空のアプリ、Windows アプリケーションパッケージプロジェクトでパッケージ化(デスクトップの WinUI 3)

の 2 つがありますが、タイトルが長い方のテンプレートを使用します。

名前予約と関連付け

Microsoft Store で配付する際のアプリ名を予約します。

Microsoft パートナーセンターにログインし、[ホーム → アプリとゲーム]ページの[新しい製品 → MSIX または PWA アプリ]を選択します。

予約したい名前を入力して「製品名の予約」ボタンをクリックします。

名前予約できたらアプリケーションと関連付けます。

Visual Studio のプロジェクト右クリックから[パッケージ化して公開する → アプリケーションをストアと関連付ける]メニューをクリックします。

予約した名前を選択します。

パッケージ作成

ソリューション内にプロジェクトが 2 つ作成されていますが、Package プロジェクトのほうを右クリックし、[公開 → アプリパッケージの作成]をクリックします。

配付方法は「○○(開発者)により△△(アプリ名)として Microsoft ストアに」にします。

パッケージの選択と構成でパッケージに含めたいアーキテクチャを選択します。

ソリューションの AppPackages フォルダー配下に .msixupload および .msixbundle が作成されます。

Template Studio を使用する場合

アプリ作成

Visual Studio でプロジェクトを新規作成し、「WinUI の Template Studio」テンプレートを選択します。

機能パネルで「MSIX パッケージ」を選択します(デフォルトで選択されています)。

名前予約と関連付け

名前予約と関連付けについてはデフォルトのテンプレートを使用する場合と同様です。

パッケージ作成

ソリューションエクスプローラーのプロジェクトを右クリックし、[公開 → アプリパッケージの作成]をクリックします。

配付方法は「○○(開発者)により△△(アプリ名)として Microsoft ストアに」にします。

パッケージの選択と構成でパッケージに含めたいアーキテクチャを選択します。

ソリューションの AppPackages フォルダー配下に .msix が作成されます(.msixbundle ではありません)。

AppPackages フォルダー直下に in フォルダーを作成し、.msix のみを in フォルダーにコピーします。

PowerShell を起動し、AppPackages フォルダーに移動します。

PS> cd C:\~\AppPackages

makeappx で .msix から .msixbundle を作成します。

PS> & 'C:\Program Files (x86)\Windows Kits\10\App Certification Kit\makeappx.exe' bundle /d in /p out.msixbundle /o

.msixbundle が作成されます。

自己署名入りのテスト証明書の作成

サイドローディングする場合は、テスト証明書の作成が必要です。

Package.appxmanifest をダブルクリックし、パッケージ化タブを開きます。

証明書の選択ボタンをクリックすると、証明書の選択ウィンドウが開きます。

作成ボタンをクリックすると、自己署名入りのテスト証明書の作成ウィンドウが開きます。

発行者共通名とパスワードを入力して OK します。

テスト証明書の有効期限は 1 年程度で切れるようで、その後はビルドができなくなりますが、テスト証明書を再度作成すればまたビルドできるようになります。

確認環境

項目 環境
OS Windows 11 Pro 23H2
Visual Studio 2022 17.9.2
Template Studio for WinUI 5.5
.NET 8.0
Windows App SDK 1.5 (1.5.240227000)

参考リンク

主な改訂履歴

  • 2024/03/10 初版。
  • 2024/03/19 発行者共通名について補足。

Discussion