LoginSignup
11
7

More than 3 years have passed since last update.

[DesktopBridge] 非UWP(WPF等)をパッケージする方法のまとめ

Last updated at Posted at 2019-08-21

やりたいこと

WPFアプリも、UWPアプリと同じようにappxなどのパッケージにして、ストアに登録したりできるらしい。
が、なんだかそのやり方が複数あって、しかも今はもう推奨しないやり方とかもあるらしく、どれがどういうやり方なのか、ちょっとネット見たくらいではわかりづらい。

勉強がてら、どんな方法があるのか、どういう特徴があるのかまとめたい。

非UWPアプリをパッケージする方法

非UWPのアプリをappxやmsixにパッケージすることを「デスクトップブリッジ」という。
DACはWindows 10, version 1607以降をサポートしており、
Windows 10 Anniversary Update (10.0; Build 14393)以降をターゲットにしたプロジェクトでのみ使用できる。

で、その非UWPアプリ(WinformやWPFなど)をパッケージする方法は、下記のようなものがあるらしい。

〇DAC(Desktop App Converter)

Desktop App Converterというアプリ、もしくはコマンドラインの場合、DesktopAppConverter.exeを使ってappxを作るやり方。
19/08/21現在、MSの推奨外となっていた。
https://docs.microsoft.com/ja-jp/windows/msix/desktop/desktop-to-uwp-run-desktop-app-converter

〇Windows Application Packaging Projectプロジェクト

Windows Application Packaging Projectプロジェクトを使用して、デスクトップアプリのパッケージを生成する方法。
https://docs.microsoft.com/ja-jp/windows/msix/desktop/desktop-to-uwp-packaging-dot-net

〇MakeAppx

MakeAppx.exeを使い、appxmanifest.xmlを作成してappxまたはmsixをつくるやり方。
Visual StudioやMSIX Packaging Toolなどのツールを使用せずにUWP/非UWPのアプリケーションをパッケージするためのやり方。
MakeAppxは、非UWPアプリをパッケージするためだけのものではなく、UWPアプリのappxやmsixからバンドルファイルを作ったりもする。
https://docs.microsoft.com/ja-jp/windows/msix/desktop/desktop-to-uwp-manual-conversion#make-appx
https://docs.microsoft.com/ja-jp/windows/msix/package/create-app-package-with-makeappx-tool

〇MSIXパッケージツール

MSIXパッケージツール、もしくはコマンドラインの場合、MsixPackagingTool.exeを使ってmsixを作るやり方。(appxは作れないっぽい)
Windows 10, version 1809以降が必要。
概要:https://docs.microsoft.com/ja-jp/windows/msix/package/manual-packaging-root
ツール:https://docs.microsoft.com/ja-jp/windows/msix/packaging-tool/create-app-package-msi-vm
CLI:https://docs.microsoft.com/ja-jp/windows/msix/packaging-tool/package-conversion-cli

その他

Windows Application Packaging Projectプロジェクトについてはこちらの記事でも、少し調べた。参照。

あと、ここ読んだ方がよさそう
パッケージの仕組み
https://docs.microsoft.com/ja-jp/windows/msix/desktop/desktop-to-uwp-behind-the-scenes

おかしなことを言っていたら、ご指摘頂けたら幸いです。

11
7
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
11
7