自己完結型のWinUI 3アプリケーションを作成する - WinUI

Windows APP SDK 1.1/1.2/1.4 で自己完結型のWinUI 3アプリケーションを作成する手順を紹介します。

事前準備

Visual Studio 2022 version 17.2 以降をインストールし、Windows App SDK を利用できる状態にします。
  • Visual Studio 2022のインストール手順はこちらの記事を参照してください。
  • Windows App SDK のプロジェクトテンプレートまたは、拡張機能をインストールします。
    • バージョン1.1の場合の手順はこちらの記事を参照してください。
    • バージョン1.2の場合の手順はこちらの記事を参照してください。
    • バージョン1.4以降の場合の手順はこちらの記事を参照してください。

手順

プロジェクトの作成

プロジェクトを作成します。プロジェクトのテンプレートは [空のアプリ、パッケージ化 (デスクトップの WinUI 3)]を利用します。


プロジェクトの名称と、プロジェクトの保存先を設定します。設定後、ウィンドウ右下の[作成]ボタンをクリックしてプロジェクトを作成します。


WinUI3 アプリケーションのプロジェクトが作成できました。

プロジェクトファイルの編集

ソリューションエクスプローラーでプロジェクトのノードをクリックして選択します。右クリックしてポップアップメニューを表示し、 [プロジェクトファイルの編集]の項目をクリックします。


プロジェクトファイルがテキストエディタで開かれます。


プロジェクトファイルのXMLを編集します。
PropertyGroupタグ内に以下のXMLを追記します。
    <WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
    <WindowsPackageType>None</WindowsPackageType>


プロジェクトファイル(編集前)
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
    <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
    <RootNamespace>BlankSelfContainedApp</RootNamespace>
    <ApplicationManifest>app.manifest</ApplicationManifest>
    <Platforms>x86;x64;arm64</Platforms>
    <RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
    <PublishProfile>win10-$(Platform).pubxml</PublishProfile>
    <UseWinUI>true</UseWinUI>
    <EnableMsixTooling>true</EnableMsixTooling>
  </PropertyGroup>

 <!-- 中略 -->
</Project>

PropertyGroupタグ内に、WindowsAppSDKSelfContained と WindowsPackageType タグを追加します。
プロジェクトファイル(編集後)
<Project Sdk="Microsoft.NET.Sdk">
  <PropertyGroup>
    <OutputType>WinExe</OutputType>
    <TargetFramework>net6.0-windows10.0.19041.0</TargetFramework>
    <TargetPlatformMinVersion>10.0.17763.0</TargetPlatformMinVersion>
    <RootNamespace>BlankSelfContainedApp</RootNamespace>
    <ApplicationManifest>app.manifest</ApplicationManifest>
    <Platforms>x86;x64;arm64</Platforms>
    <RuntimeIdentifiers>win10-x86;win10-x64;win10-arm64</RuntimeIdentifiers>
    <PublishProfile>win10-$(Platform).pubxml</PublishProfile>
    <UseWinUI>true</UseWinUI>
    <EnableMsixTooling>true</EnableMsixTooling>
    <WindowsAppSDKSelfContained>true</WindowsAppSDKSelfContained>
    <WindowsPackageType>None</WindowsPackageType>
  </PropertyGroup>

 <!-- 中略 -->
</Project>

デバッグの起動プロファイルの変更

Visual Studioの上部のツールバーのデバッグ開始ボタンの右側の[▼]ボタンをクリックします。


下図のドロップダウンメニューが表示されますので、[プロジェクト名 (Unpackaged)]のプロファイルの項目をクリックして選択します。




ソリューションプロファイルのコンボボックスをクリックします。


ドロップダウンリストが表示されますので、実行する環境、今回の場合は[x64]を選択します。


設定が変更できたら、デバッグ開始ボタンをクリックします。


プロジェクトが起動し、WinUI 3アプリケーションのウィンドウが表示されます。

実行ファイルの確認

ビルド結果の実行ファイルを確認します。プロジェクトのフォルダを開きます。


64ビットでデバッグビルドした結果は、プロジェクトフォルダ内の bin\x64\Debug\net6.0-windows10.0.19041.0\win10-x64 フォルダに 配置されています。プロジェクト名.exe のファイルをダブルクリックして実行します。


Exeファイルの実行でもWinUI 3アプリケーションが起動できました。

著者
iPentecのメインプログラマー
C#, ASP.NET の開発がメイン、少し前まではDelphiを愛用
掲載日: 2022-06-15
iPentec all rights reserverd.