MSIX とはWhat is MSIX?

MSIX は、あらゆる Windows アプリに最新のパッケージ化エクスペリエンスを提供する Windows アプリ パッケージ形式です。MSIX is a Windows app package format that provides a modern packaging experience to all Windows apps. MSIX パッケージ形式では、Win32、WPF、Windows フォームのアプリに対して新たな、最新のパッケージ化および展開機能が有効になるだけでなく、既存のアプリ パッケージやインストール ファイルの機能が維持されます。The MSIX package format preserves the functionality of existing app packages and/or install files in addition to enabling new, modern packaging and deployment features to Win32, WPF, and Windows Forms apps.

MSIX を使用すると、企業は時勢に遅れず、自社のアプリケーションを常に最新の状態に保つことができます。MSIX enables enterprises to stay current and ensure their applications are always up to date. これにより、IT プロや開発者はユーザー中心のソリューションを提供しながら、再パッケージ化の必要性を減らすことでアプリケーションの所有権のコストを削減できます。It allows IT Pros and developers to deliver a user centric solution while still reducing the cost of ownership of application by reducing the need to repackage.

主な機能Key features

  • 信頼性。Reliability. MSIX のインストールは信頼性が高く、数百万回のインストール中 99.96% の成功率を達成しており、アンインストールも保証されます。MSIX provides a reliable install boasting a 99.96% success rate over millions of installs with a guaranteed uninstall.
  • ネットワーク帯域幅の最適化。Network bandwidth optimization. MSIX では、64k のブロックのみをダウンロードすることで、ネットワーク帯域幅への影響が軽減されます。MSIX decreases the impact to network bandwidth through downloading only the 64k block. これは、MSIX アプリ パッケージに含まれている AppxBlockMap.xml ファイルを活用することで実現されます (詳細については、以下を参照してください)。This is done by leveraging the AppxBlockMap.xml file contained in the MSIX app package (see below for more details). MSIX は、最新のシステムとクラウド向けに設計されています。MSIX is designed for modern systems and the cloud.
  • ディスク領域の最適化。Disk space optimizations. MSIX では、アプリ間のファイルの重複が存在しません。Windows によってアプリ間の共有ファイルが管理されます。With MSIX there is no duplication of files across apps and Windows manages the shared files across apps. アプリは引き続き相互に独立しているため、更新によってファイルを共有する他のアプリに影響が出ることはありません。The apps are still independent of each other so updates will not impact other apps that share the file. プラットフォームによりアプリ間で共有ファイルが管理されている場合でも、完全アンインストールは保証されます。A clean uninstall is guaranteed even if the platform manages shared files across apps.

ハイライトHighlights

  • 既存の Windows アプリをパッケージ化します。Package existing Windows apps. MSIX Packaging Tool を使用して、以前の Windows アプリまたは新しい Windows アプリ用の MSIX パッケージを作成します。Use the MSIX Packaging Tool to create an MSIX package for any Windows app, old or new. MSIX Packaging Tool は、パッケージ化エクスペリエンスを合理化し、Windows アプリを変換してパッケージ化するための対話型のユーザー インターフェイスまたはコマンド ラインを提供します。The MSIX packaging tool streamlines the packaging experience, offering an interactive user interface or command line to convert and package Windows apps.
  • MSIX アプリ パッケージをインストールします。Install MSIX app packages. アプリ インストーラーを使用して、ローカルに利用できる、または任意のコンテンツ配信ネットワーク上にある MSIX アプリ パッケージのインストールとアップデートを行います。Use App Installer to install or update any MSIX app package that is locally available or on any content distribution network.
  • パッケージ アプリに実行時の修正プログラムを適用します。Apply run time fixes to packaged apps. パッケージ サポート フレームワークは、ソース コードにアクセスできない場合に既存のデスクトップ アプリに修正を適用して MSIX コンテナー内で実行できるようにするのに役立つオープン ソース キットです。The Package Support Framework is an open source kit that helps you apply fixes to your existing desktop app when you don't have access to the source code, so that it can run in an MSIX container.
  • MSIX をあらゆる場所で使用します。Use MSIX anywhere. オープン ソースの MSIX SDK により、MSIX パッケージは、より多用途であり、プラットフォームに依存しません。With the open source MSIX SDK, MSIX packages are more versatile, and platform independent. この SDK には、Windows 10 と非 Windows 10 のプラットフォームを含むあらゆるプラットフォームでアプリ パッケージを確認、検証、展開するために必要なすべての API が用意されています。The SDK provides all of the APIs needed to verify, validate, and unpack an app package on any platform, including Windows 10 and non-Windows 10 platforms.

MSIX とリソースの紹介ビデオIntroduction video to MSIX and resources

このビデオでは、アプリのインストールと展開のワークフローを効率化して改善するために MSIX パッケージを使用する主要な方法を紹介します。This video introduces the key ways that MSIX packaging can help you streamline and improve your app installation and deployment workflows.


MSIX に関するディスカッションと最新の情報については、MSIX テクニカル コミュニティのページにアクセスしてください。Visit the MSIX Tech Community page for discussions and the latest information about MSIX. MSIX の学習に関するその他のリソースについては、こちらの記事をご覧ください。For additional resources about learning MSIX, see this article.

MSIX パッケージの内部Inside an MSIX package

MSIX パッケージの図

アプリ ペイロードApp payload

ペイロード ファイルとは、アプリのビルド時に作成されるアプリのコード ファイルとアセットのことです。The payload files are the app code files and assets that are created when building the app.

AppxBlockMap.xmlAppxBlockMap.xml

パッケージのブロック マップ ファイルとは、アプリのファイルの一覧と、パッケージに格納されている各データ ブロックのインデックスと暗号化ハッシュを含む XML ドキュメントのことです。The package block map file is an XML document that contains a list of the app’s files along with indexes and cryptographic hashes for each block of data that is stored in the package. ブロック マップ ファイル自体は、パッケージが署名されるときにデジタル署名を使って検証および保護されます。The block map file itself is verified and secured with a digital signature when the package is signed. ブロック マップ ファイルによって、MSIX パッケージを段階的にダウンロードして検証できるようになります。また、インストール後のアプリ ファイルに対する差分更新をサポートするためにも機能します。The block map file allows MSIX packages to be downloaded and validated incrementally, and also works to support differential updates to the app files after they’re installed.

AppxManifest.xmlAppxManifest.xml

パッケージ マニフェストとは、システムが MSIX アプリを展開、表示、および更新するために必要な情報を含む XML ドキュメントのことです。The package manifest is an XML document that contains the info the system needs to deploy, display, and update an MSIX app. この情報には、パッケージ ID、パッケージの依存関係、必要な機能、視覚要素、機能拡張ポイントが含まれています。This info includes package identity, package dependencies, required capabilities, visual elements, and extensibility points.

AppxSignature.p7xAppxSignature.p7x

AppxSignature.p7x は、パッケージに署名するときに生成されます。The AppxSignature.p7x is generated when the package is signed. すべての MSIX パッケージは、インストールする前に署名されている必要があります。All MSIX packages are required to be signed before install. AppxBlockmap.xml により、プラットフォームでパッケージをインストールし、検証することができます。With the AppxBlockmap.xml, the platform is able to install the package and be validated.

サポートされているプラットフォームSupported platforms

MSIX をサポートしているプラットフォームの完全な一覧については、こちらの記事をご覧ください。See this article for a full list of platforms that support MSIX.

アプリ コンテナーの利点Benefits of app containers

MSIX を使用してパッケージ化されたアプリは、軽量なアプリ コンテナーで実行できます。Apps that are packaged using MSIX run in a lightweight app container. MSIX アプリのプロセスとその子プロセスは、コンテナー内で実行され、ファイル システムとレジストリの仮想化を使用して分離されます。The MSIX app process and its child processes run inside the container and are isolated using file system and registry virtualization. すべての MSIX アプリで、グローバル レジストリを読み取ることができます。All MSIX apps can read the global registry. MSIX アプリでは、独自の仮想レジストリと仮想アプリケーション データ フォルダーに書き込みが行われます。このデータは、アプリのアンインストール時またはリセット時に削除されます。An MSIX app writes to its own virtual registry and application data folder, and this data will be deleted when the app is uninstalled or reset. 他のアプリから MSIX アプリの仮想レジストリまたは仮想ファイル システムにアクセスすることはできません。Other apps do not have access to the virtual registry or virtual file system of an MSIX app.