パッケージデスクトップアプリケーション (デスクトップブリッジ)Package desktop applications (Desktop Bridge)

既存のデスクトップアプリケーションを利用して、Windows 10 ユーザー向けの最新のエクスペリエンスを追加します。Take your existing desktop application and add modern experiences for Windows 10 users. Microsoft Store を通じてアプリを配布し、国際市場でのリーチを拡大します。Then, achieve greater reach across international markets by distributing it through the Microsoft Store. ストアに組み込まれている機能を利用することで、アプリケーションをより簡単に収益化ことができます。You can monetize your application in much simpler ways by leveraging features built right into the Store. もちろん、ストアを使用する必要はありません。Of course, you don't have to use the Store. 既存のチャンネルを自由に使用してください。Feel free to use your existing channels.

デスクトップアプリケーション用のパッケージを作成すると、アプリケーションは id を取得し、その id を使用して、デスクトップアプリケーションが Windows ユニバーサルプラットフォーム (UWP) Api にアクセスできるようになります。When you create a package for your desktop application, your application will get an identity and with that identity, your desktop application has access to Windows Universal Platform (UWP) APIs. これを利用して、ライブ タイルや通知など、現代的で魅力的なエクスペリエンスを実現できます。You can use them to light up modern and engaging experiences such as live tiles and notifications. 単純な条件付きコンパイルとランタイムチェックを使用して、アプリケーションが Windows 10 で実行されている場合にのみ UWP コードを実行します。Use simple conditional compilation and runtime checks to run UWP code only when your application runs on Windows 10.

Windows 10 のエクスペリエンスを利用するために使用するコードとは別に、アプリケーションは変更されていないため、以前のバージョンの Windows でユーザーに配布することができます。Aside from the code that you use to light up Windows 10 experiences, your application remains unchanged and you can continue to distribute it to users on previous versions of Windows. Windows 10 では、アプリケーションは、今日と同じように、完全に信頼されたユーザーモードで動作し続けます。On Windows 10, your application continues to run in full-trust user mode just like it’s doing today.

準備Prepare

まず、「デスクトップアプリのパッケージの準備」を参照してアプリケーションを準備し、アプリケーションの Windows アプリケーションパッケージを作成する前に、アプリケーションに適用される問題に対処します。First, prepare your application by reviewing the article Prepare to package your desktop app, and then addressing any of the issues that apply to your application before you create a Windows app package for it. パッケージを作成する前に、アプリケーションに多くの変更を加える必要がない場合があります。You might not have to make many changes to your application before you create the package. ただし、パッケージを作成する前に、アプリケーションを調整することが必要になる状況もあります。However, there are some situations that might require you to tweak your application before you create a package for it.

[パッケージ]Package

デスクトップアプリ用に MSIX パッケージを作成するには、いくつかの方法があります。There are several different ways to create an MSIX package for your desktop app.

既存のアプリインストーラーから MSIX をビルドするBuild an MSIX from an existing app installer

アプリパッケージ (たとえば、MSI または App-v インストーラー) が既にある場合は、 Msix パッケージ化ツールを使用して、既存のデスクトップアプリを msix 形式に再パッケージすることをお勧めします。If you already have an app package (for example, an MSI or App-V Installer), we recommend that you use the MSIX Packaging Tool to repackage your existing desktop app to the MSIX format. 変換用の対話型の UI とコマンド ラインの両方が用意されていて、ソース コードなしでアプリケーションを変換することができます。It offers both an interactive UI and a command line for conversions, and gives you the ability to convert an application without having the source code.

Desktop App Converterという名前の以前のツールも、既存のデスクトップアプリケーションパッケージの再パッケージ化に使用できます。An earlier tool named the Desktop App Converter is also still available for repackaging an existing desktop app package. ただし、このツールは現在非推奨とされています。代わりに、MSIX パッケージ化ツールを使用することをお勧めします。However, this tool is now deprecated, and we recommend that you use the MSIX Packaging Tool instead.

次の表は、これらのツールでサポートされている Windows 10 のバージョンとパッケージ形式を示しています。The following table shows the supported versions of Windows 10 and package formats for these tools.

ツールTool パッケージを作成するためのサポートされている OS バージョンSupported OS versions for creating packages インストールされているパッケージでサポートされている OS バージョンSupported OS versions for installed packages サポートされているパッケージ形式Supported package formats
MSIX パッケージ化ツールMSIX Packaging Tool Windows 10 バージョン1809以降Windows 10, version 1809 and later Windows 10 バージョン 1709 以降Windows 10, version 1709 and later . msix のみ.msix only
デスクトップアプリコンバーターDesktop App Converter Windows 10 バージョン 1607 以降Windows 10, version 1607 and later Windows 10 バージョン 1607 以降Windows 10, version 1607 and later .appx のみ.appx only

MSIX パッケージ化ツールの使用を開始するには、次の記事を参照してください。To get started using the MSIX Packaging Tool, see these articles:

Visual Studio を使用してソースコードから MSIX をビルドするBuild an MSIX from source code using Visual Studio

Visual Studio を使ってアプリケーションを管理しており、アプリケーションにインストーラーがないか、インストーラーが非常に多数の複雑なタスクを実行しない場合、代わりに Visual Studio の使用を検討してください。If you maintain your application by using Visual Studio, and your application doesn't have an installer or your installer doesn't perform too many complicated tasks, consider using Visual Studio instead.

Visual Studio を使用すると、パッケージを簡単に作成できます。Visual Studio makes it easy to create a package. Windows アプリケーションパッケージプロジェクトをソリューションに追加し、デスクトッププロジェクトを参照してから、F5 キーを押してアプリをデバッグします。You'll add a Windows Application Package Project to your solution, reference your desktop project, and then press F5 to debug your app. 他にも以下のような処理を実行できます。Here's a few other things you can do with it.

✔️ビジュアルアセットを自動的に生成します。Automatically generate visual assets.

✔️ビジュアルデザイナーを使用して、マニフェストに変更を加えます。Make changes to your manifest by using a visual designer.

✔️ウィザードを使用してパッケージを生成します。Generate your package by using a wizard.

✔️パートナーセンターで既に予約されている名前を使用して、アプリケーションに id を簡単に割り当てることができます。Easily assign an identity to your application from a name that you've already reserved in Partner Center.

手順については、「 Visual Studio を使用してデスクトップアプリケーションをパッケージ化する」を参照してください。For instructions, see Package a desktop application by using Visual Studio. 次の表は、Visual Studio、Windows 10、およびパッケージ形式のサポートされているバージョンを示しています。The following table shows the supported versions of Visual Studio, Windows 10, and package formats.

サポートされている Visual Studio のバージョンSupported versions of Visual Studio パッケージを作成するためのサポートされている OS バージョンSupported OS versions for creating packages インストールされているパッケージでサポートされている OS バージョンSupported OS versions for installed packages サポートされているパッケージ形式Supported package formats
Visual Studio 2019Visual Studio 2019
Visual Studio 2017 15.5 以降Visual Studio 2017 15.5 and later
Windows 10 バージョン 1607 以降Windows 10, version 1607 and later Windows 10 バージョン 1607 以降Windows 10, version 1607 and later . msix (Windows 10 バージョン1709以降).msix (for Windows 10, version 1709 and later)
.appx (Windows 10 バージョン1607以降).appx (for Windows 10, version 1607 and later)

サードパーティのインストーラーThird-party installers

いくつかの一般的なサードパーティ製品やインストーラーで、デスクトップアプリケーションをパッケージ化する機能がサポートされるようになりました。Several popular third-party products and installers now support the ability to package a desktop application. これらのサードパーティ製品の詳細と一覧については、「サードパーティのインストーラーを使用してデスクトップアプリケーションをパッケージ化する」を参照してください。For more details and a list of these third-party products, see Package a desktop application using third-party installers.

手動でのパッケージ化Manual packaging

最後のオプションとして、これらのツールを使用せずにアプリケーションを変換できます。As a final option, you can convert your application without using any of these tools. 変換をきめ細かく制御する場合は、マニフェスト ファイルを作成し、MakeAppx.exe ツールを実行して Windows アプリ パッケージを作成します。If you want that granular control over your conversion, you can create a manifest file, and then run the MakeAppx.exe tool to create your Windows app package.

デスクトップアプリケーションを手動でパッケージ化する」を参照してください。See Package a desktop application manually.

最新の Windows 10 エクスペリエンスを追加するAdd modern Windows 10 experiences

デスクトップアプリ用の MSIX パッケージを作成した後、UWP Api、パッケージ拡張機能、UWP コンポーネントを使用して、最新の機能を利用し、ライブタイルや通知などの Windows 10 エクスペリエンスを魅力的にすることができます。After you create an MSIX package for your desktop app, you can use UWP APIs, package extensions, and UWP components to light up modern and engaging Windows 10 experiences such as live tiles and notifications.

UWP Api を使用した拡張Enhance with UWP APIs

アプリをパッケージ化すると、ライブ タイルやプッシュ通知などの機能を追加できます。Once you've packaged your app, you can light it up with features such as live tiles, and push notifications. これらの機能の一部は、アプリケーションのエンゲージメントレベルを大幅に向上させることができるため、追加の時間を大幅に短縮できます。Some of these capabilities can significantly improve the engagement level of your application and they cost you very little time to add. もう少しコードの追加が必要になるものもあります。Some enhancements require a bit more code.

デスクトップアプリケーションでの UWP api の使用」を参照してください。See Use UWP APIs in desktop applications.

パッケージ拡張機能との統合Integrate with package extensions

アプリケーションをシステムと統合する必要がある場合 (ファイアウォール規則を確立する場合など) は、アプリケーションのパッケージマニフェストでそれらを記述します。それ以外の処理はシステムによって行われます。If your application needs to integrate with the system (For example: establish firewall rules), describe those things in the package manifest of your application and the system will do the rest. これらのタスクのほとんどは、まったくコードを記述する必要がありません。For most of these tasks, you won't have to write any code at all. マニフェストに XML を使用すると、ユーザーがログオンしたときにプロセスを開始したり、アプリケーションをエクスプローラーに統合したり、他のアプリに表示される印刷ターゲットのリストをアプリケーションに追加したりできます。With a bit of XML in the manifest, you can do things like start a process when the user logs on, integrate your application into File Explorer, and add your application a list of print targets that appear in other apps.

デスクトップアプリケーションとパッケージ拡張機能の統合」を参照してください。See Integrate your desktop application with package extensions.

UWP コンポーネントによる拡張Extend with UWP components

一部の Windows 10 エクスペリエンス (タッチ対応 UI ページなど) は、最新のアプリ コンテナー内で実行する必要があります。Some Windows 10 experiences (For example: a touch-enabled UI page) must run inside of a modern app container. 一般的に、UWP API を使用して既存のデスクトップ アプリケーションを強化することでエクスペリエンスを追加できるかどうかを最初に判断する必要があります。In general, you should first determine whether you can add your experience by Enhancing your existing desktop application with UWP APIs. UWP コンポーネントを使用してエクスペリエンスを実現する必要がある場合は、UWP プロジェクトをソリューションに追加し、app services を使用してデスクトップアプリケーションと UWP コンポーネントの間で通信を行うことができます。If you have to use a UWP component, to achieve the experience, then you can add a UWP project to your solution and use app services to communicate between your desktop application and the UWP component.

UWP コンポーネントによるデスクトップアプリケーションの拡張」を参照してください。See Extend your desktop application with UWP components.

テストTest

配布の準備として現実的な設定でアプリケーションをテストするには、アプリケーションに署名してからインストールすることをお勧めします。To test your application in a realistic setting as you prepare for distribution, it's best to sign your application and then install it. アプリのテスト」をご覧ください。See Test your app.

重要

アプリケーションを Microsoft Store に発行する場合は、Windows 10 を実行しているデバイスで、モードでアプリケーションが正しく動作することを確認してください。If you plan to publish your application to the Microsoft Store, make sure that your application operates correctly on devices that run Windows 10 in S mode. これは、ストアの要件です。This is a Store requirement. Windows アプリの S モードの Windows 10 をテストする」をご覧ください。See Test your Windows app for Windows 10 in S mode.

[検証]Validate

アプリケーションが Microsoft Store で公開されたり、 Windows の認定を受けたりする可能性を最大限に高めるには、証明書を送信する前にローカルで検証してテストします。To give your application the best chance of being published on the Microsoft Store or becoming Windows Certified, validate and test it locally before you submit it for certification.

DAC を使用してアプリをパッケージ化している場合は、新しい-Verifyフラグを使用して、パッケージ化されたデスクトップアプリケーションとストアの要件に対してパッケージを検証できます。If you're using the DAC to package your app, you can use the new -Verify flag to validate your package against the packaged desktop application and Store requirements. 「アプリのパッケージ化」、「アプリへの署名」、および「ストアの送信の準備」を参照してください。See Package an app, sign the app, and prepare it for Store submission.

Visual Studio を使用している場合は、アプリパッケージの作成ウィザードからアプリケーションを検証できます。If you're using Visual Studio, you can validate your application from the Create App Packages wizard. アプリ パッケージ アップロード ファイルの作成に関するページをご覧ください。See Create an app package upload file.

ツールを手動で実行する方法については、「Windows アプリ認定キット」をご覧ください。To run the tool manually, see Windows App Certification Kit.

Windows アプリ認定でアプリの検証に使用されるテストの一覧を確認するには、「Windows デスクトップ ブリッジ アプリのテスト」をご覧ください。To review the list of tests that the Windows App Certification uses to validate your app, see Windows Desktop Bridge app tests.

配布Distribute

アプリケーションを配布するには、Microsoft Store を発行するか、他のシステムにサイドローディングします。You can distribute your application by publishing it the Microsoft Store or by sideloading it onto other systems.

パッケージデスクトップアプリの配布」を参照してください。See Distribute a packaged desktop app.

サポートとフィードバックSupport and feedback

質問に対する回答を検索するFind answers to your questions

ご質問がある場合は、Have questions? Stack Overflow でお問い合わせください。Ask us on Stack Overflow. Microsoft のチームでは、これらのタグをチェックしています。Our team monitors these tags. こちらから質問することもできます。You can also ask us here.

フィードバックの提供または機能に関する提案Give feedback or make feature suggestions

UserVoice のページをご覧ください。See UserVoice.