展開を計画する

コンシューマー市場と企業のどちらを対象としている場合でも、配布を成功させるための鍵は、展開先となるデバイスを把握することです。 対象にするプラットフォームによっては、解決する必要がある追加の依存関係が存在する場合があります。 一部の企業では、単一のオペレーティング システムが組織全体に配布されています。 また、異なる種類のハードウェアとオペレーティング システムが混在している企業もあります。 混合環境で展開を成功させるには、インストーラー テクノロジのバリエーションを制限しながら、すべてのオペレーティング システムに簡単にインストールできるソリューションを作成することが重要です。

さらに、すべての開発者は、対象にする、サポートされている最小のオペレーティング システムを把握している必要があります。 最小公分母のようなオペレーティング システムを対象にすると、可能な限り最大の範囲を対象にすることはできますが、多くの場合、オペレーティング システムの早期リリース版は、アプリケーションの構築に使用する特定の API 呼び出しをサポートしない可能性があります。

MSIX プラットフォームのサポート

MSIX は、Windows 10 バージョン 1709 (10.0.16299.0) から導入されました。 これは、基本的な MSIX 機能を使用し、Windows 10 バージョン 1709 以上を対象とする場合、MSIX は問題なく機能することを意味します。 サポートされるオペレーティング システムとサポートされる機能の完全な一覧については、「サポートされているプラットフォーム」を参照してください。

MSIX にパッケージ化されるサービス

サービスを MSIX にパッケージ化する機能は、Windows 10 Client 2004 (10.0.19041.0) から導入されました。 このため、アプリケーションで、MSIX にパッケージ化されたサービスを使用する場合、それらのオペレーティング システムに展開先が制限されます。 サービスがバックグラウンドで起動し、コンピューターに変更を加える可能性があるため、インストールには管理特権が必要です。 MSIX での MSIX パッケージ サービスの使用の詳細については、「サービスを含むインストーラーを変換する」を参照してください。

MSIX パッケージのサーバー サポート

MSIX は、Windows Server には組み込まれていません。 ただし、アプリ インストーラー アプリケーションがインストールされている場合、デスクトップ エクスペリエンスが搭載された Window 10 Server ビルド 1709 以上では、MSIX がサポートされます。 これより前のビルドのサーバーを対象にする場合、MSIX コアもインストールする必要があります。 MSIX コアについては、「MSIX コア」を参照してください。

Windows 10 1703 以前での MSIX パッケージのサポート

Windows 10 Client 1709 (10.0.16299.0) より前のバージョンの Windows を対象にする場合、MSIX コアを使用する必要があります。以前の Windows エディションに MSIX コアをインストールすることにより、MSIX アプリケーションを展開して実行できるようになります。

サポートされるオペレーティング システムとサポートされる機能の完全な一覧については、「サポートされているプラットフォーム」を参照してください。

アップグレード、ダウングレード、アーキテクチャに関する考慮事項

MSIX パッケージは、元のパッケージを再インストールするときにアップグレード、ダウングレード、または修復することができます。 ダウングレードする場合、効率を上げるために、MSIX は差分更新を行います。つまり、古いペイロードは再ダウンロードされません。

既存のパッケージを更新する場合、考慮する必要がある追加事項がいくつかあります。 MSIX バンドルと MSIX パッケージはアーキテクチャ固有のものにすることができます。 アーキテクチャ間でアプリをアップグレードおよびダウングレードすることはできますが、次の表に示すように、異なるアーキテクチャの同じバージョンを再インストールすることはできません。

インストール済み (バージョン) アップグレードまたは再インストールするバージョン Behavior 結果
x86 (1.0) x86 (1.0) 再インストール サポートされています
x86 (1.0) x86 (3.0) アップグレード サポートされています
x86 (1.0) x64 (1.0) 再インストール サポートされていません
x86 (1.0) x64 (3.0) アップグレード サポートされています
x86 (3.0) x86 (1.0) ダウングレード サポートされています
x86 (3.0) x64 (1.0) ダウングレード サポートされています

ダウングレード

MSIX をアンインストールまたはダウングレードする場合、MSIX はユーザーの appdata を保持します。 このため、新しいアプリで作成されるそのデータに下位互換性がある場合を除いて、ダウングレードされたアプリでデータにアクセスすると、問題が発生する可能性があります。 データに下位互換性がない場合は、ユーザーにダウングレードを許可しないことをお勧めします。

アプリの更新設定を制御する方法の詳細については、「アプリ インストーラー ファイルの更新設定を構成する」を参照してください。

MSIX バンドル

MSIX バンドルは、複数のアーキテクチャを格納できるように設計されたパッケージです。 一方、MSIX パッケージは、1 つのアーキテクチャのみをサポートします。 MSIX バンドルは、MSIX パッケージのアップグレードまたはダウングレードに使用できますが、その逆は当てはまりません。 MSIX パッケージを使用して MSIX バンドルをアップグレードまたはダウングレードすることはできません。

バンドルを作成する方法の詳細については、「MSIX パッケージのバンドル」を参照してください。

パッケージ アプリへのユーザーの移行

ユーザーによってパッケージ アプリが使用されるようにするには、アプリを配布する前に、パッケージ マニフェストにいくつかの拡張機能を追加することを検討してください。 次のようなことができます。

  • 既存のスタート タイルとタスク バー ボタンの参照先をパッケージ アプリに設定する。
  • パッケージ アプリケーションを一連のファイルの種類に関連付ける。
  • 特定の種類のファイルが既定でパッケージ アプリケーションによって開かれるように設定する。

また、次のようなタスクを実行するコードをパッケージ アプリケーションに追加することも検討してください。

  • パッケージ アプリケーションの適切なフォルダーに、デスクトップ アプリに関連付けられているユーザー データを移行します。
  • アプリのデスクトップ バージョンをアンインストールするためのオプションをユーザーに示します。

詳細と例については、アプリへのユーザーの移行に関する記事を参照してください。