MSIX : The Future of Universal App Format and Application Management — In Depth (Part 1)

In order to understand what MSIX really is we need to first understand the least touched Application format AppX, it’s limitations and Advantages and widely used Windows Installer(msi), it’s advantages.
What is Appx?
APPX is the file format used to distribute and install apps on the Universal Windows Platform. The APPX is an .ZIP-based container file. When uploading AppX packages for the Windows Store, developers must reserve the application’s name, specify selling details and list advanced features (such as push capabilities). Once uploaded, the Microsoft Windows Store will run security and compliance tests on the AppX package before making it available for sale.
Advantages:
- Having an AppX package means you can have your application available in the Microsoft Store and the opportunity to be discovered by more users.
- Gaining access to new APIs will also mean you can now start migrating your app one step at a time, while still serving the large users base from platforms that don’t support the AppX format.
- You can now easily create a live tile for your application or integrate Cortana services.
Limitations:
- A UWP application will only be able to run under user context, this means you will not be able to elevate your application, install services or drivers, write to HKLM registry hive or generate log files in the installation folder of your application.
What is Windows Installer?
Microsoft Windows Installer is an installation and configuration service provided with Windows. The installer service enables customers to provide better corporate deployment and provides a standard format for component management. The installer also enables the advertisement of applications and features according to the operating system.
Advantages :
•Customize Applications to suit the user needs.
•Simplify the Installation and Un-installation Procedures.
•Saves Time in both Installation and Un-installation.
•Once packaged, applications can be quickly installed on a range of desktops in multiple locations, saving administrative costs, simplifying the manage of licensing fees and minimizing support and repair expenditures.
•Has a great flexibility of obtaining the lost files through a phenomenon called Self Heal, this reduces the down time of application. If a critical file (a .DLL or .EXE file, for example) that is part of the distribution is corrupt or is deleted, the user can be prompted to repair the installation by presenting the original .MSI distribution. Additionally, if the installation media is available (for example, on a network share), the repair simply happens automatically.
- Can be advertised. So that on demand installation could take place.
- Upgrading of the application can be done with ease.
- Clean installation and Un-Installation is achieved by a process called Roll-Back.
- Simplifies management of new user set-up along with the revision and distribution of software repairs and new applications to existing users. Application recovery can also be improved.
- Helps eliminate uncontrolled software downloads and installation, enables applications to be safely removed and reduces non-business traffic on a corporate network.
- Saves Space of the product by doing apt modifications to applications.
What is MSIX?
Microsoft presented MSIX to us as an improved version of the AppX package (initially used only for UWP apps) to better support traditional desktop applications on Windows 10, by bringing along the knowledge they have from MSI and App-V packages and the Desktop Bridge program.
A very good article explaining the core structure and concepts related can be found here.(Highly Recommend to read)
Basically,
MSI(Advantages) + AppX(Advantages) — Limitations = MSIX
What we know about MSIX
First of all: MSIX has no ties to the MSI package format. It is a completely new way to handle software packaging. MSIX is open source and the technology will work not only on Windows 7 and Windows 10, but also Linux, OSX, iOS and Android.
The new package format provides a unified packaging format for Win32, Desktop Bridge, and UWP applications. The format utilizes the AppX application framework and will be supported in the Microsoft Store.
It brings the concept of Modern Management:
- It uses streaming technology to optimize bandwith by only downloading the differences between an existing package and an upgrade.
- The application lives inside a virtual application container which ensures strict isolation between the application and the operating system.
- Capturing products is performed similarly to MSI packaging. MSIX support converting EXE installers and MSI packages unattended. (EXE installers need to support silent installation)
- Reboot while capturing is not supported. The tool cannot save its state and continue after a reboot. For now, a required restart should be ignored or suppressed.
In the next Part we will see how to setup MSIX Packaging tool and create packages so stay tuned. You can get an idea from below video published by Microsoft Ignite but alot of things have changed since then which will be covered.
My Telegram ID : @jus1insun
Twitter : https://twitter.com/AmanSri67455907