【WinUI3】unpackagedアプリを作成する

WinUI3のプロジェクトでは、packaged・unpackagedを選択できます。 unpackagedなアプリとすることで、exeファイルから直接実行できるようになります。

違いについては公式のドキュメントを参照してもらうとして、今回はunpackagedのアプリを作成する際の手順をまとめます。

準備:プロジェクト作成

「新しいプロジェクトの作成」から「空のアプリ、パッケージ化(デスクトップのWinUI3)」を選択します。

手順1:プロジェクトのアンロード

ソリューションエクスプローラからプロジェクトを右クリックし、リストの中から「プロジェクトのアンロード」を選択します。

手順2:.vcxprojファイルを編集する

表示される.vcxprojファイルの要素の末尾に以下の要素を追加します。

<WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
<WindowsPackageType>None</WindowsPackageType>

また、すでに存在する<AppxPackage>の内容をfalseに変更します。

↓変更済の状態

<PropertyGroup Label="Globals">
    <!-- 中略 -->
    <TargetName>$(RootNamespace)</TargetName>
    <DefaultLanguage>ja-JP</DefaultLanguage>
    <MinimumVisualStudioVersion>16.0</MinimumVisualStudioVersion>
    <AppContainerApplication>false</AppContainerApplication>
    <AppxPackage>false</AppxPackage>  <!-- falseに変更 -->
    <ApplicationType>Windows Store</ApplicationType>
    <ApplicationTypeRevision>10.0</ApplicationTypeRevision>
    <WindowsTargetPlatformVersion>10.0</WindowsTargetPlatformVersion>
    <WindowsTargetPlatformMinVersion>10.0.17763.0</WindowsTargetPlatformMinVersion>
    <UseWinUI>true</UseWinUI>
    <EnableMsixTooling>true</EnableMsixTooling>
    <WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
    <WindowsPackageType>None</WindowsPackageType>
</PropertyGroup>

手順3:「プロジェクトの再読み込み」を実行

再びソリューションエクスプローラのプロジェクトを右クリックし、今度は「プロジェクトの再読み込み」を選択します。

確認

この状態で所望のビルド構成でビルドすると、exeファイルからアプリが起動するようになります。