Creating an MSIX/AppX Package

MSI Package Builder is shipped with a full support of currently available features of MSIX, the packaging technology recently introduced by Microsoft. It extends the AppX one, used for deploying applications from Windows Store. The MSIX and AppX format has lots in common and both target Windows 10 platform, but MSIX is used starting from Windows 10 October 2018 update, and earlier the AppX format is used. MSI Package Builder generates either the MSIX or AppX package, depending on the targeting.

MSIX/AppX packages can be generated only on PCs running Windows 10 or later. If you run the program on earlier version on Windows, you cannot generate MSIX/AppX. In this case you need to install the program on a PC running Windows 10 or later, copy the installation project and generate MSIX/AppX there.

Create MSIX/AppX Package

Create MSIX/AppX Package

The Create MSIX/AppX Package button from the Builder group on the Home Ribbon page should be used to generated an MSIX/AppX package based on the selected project.

To create an MSIX/AppX package manually, you can use the Create MSIX/AppX Package item from the Projects view pop-up menu or from the Builder group on the Home Ribbon page. When an MSIX/AppX package is created based on a project, the options for the package created are filled automatically using the values defined in the Project Details view, while during the repackaging process they are defined on-line, then saved to the created project. Let us take a look at the available options and describe each one starting with the general product information Pic 1.

Specifying general MSIX/AppX package information

Pic 1. Specifying general MSIX/AppX package information

The general information consists of the Product Name, Platform, Manufacturer, Icon, Language and Version. The product name, manufacturer and icon are used to display the product on the system. The platform is used to define if the installer is deploying an x86 or an x64 application. The Language field is responsible for defining the language and the encoding used by the installer package.

The version is the most important field of the general information because it is responsible for a correct package installation and upgrade. That means that every time you prepare an updated package using the same project you should change its version to a higher one. And it is also displayed on the system.

The Package Name and Publisher fields are responsible for the package identification. For packages signed with a certificate from store or from file, the Publisher field is automatically filled from the certificate. The Description field is used to provide a description for the package.

The next aspect of an MSIX/AppX package configuration is choosing the target platforms Pic 2. It's recommended to set target platforms automatically based on the project data and current Windows version. You can also specify the list of supported desktop and server operating system versions manually. When you create an MSIX/AppX package the output package format depends on the selected target platform. If you select a Windows platform that supports MSIX, the program will generate an MSIX package. For earlier versions of Windows that don't support MSIX, an AppX package will be generated.

Defining the Target Plarforms

Pic 2. Defining the Target Plarforms

Another important thing to configure is a digital signature as MSIX/AppX packages cannot be installed until they are digitally signed. You can use the configuration defined in the program preferences or override it for this package Pic 3.

Configuring Digital Signature

Pic 3. Configuring Digital Signature

To create an MSIX package you need to declare its capabilities, i.e. access to APIs or resources, such as pictures, music, camera or microphone. Some capabilities provide applications with access to sensitive resources. These resources are considered sensitive because they can access the user's personal data. You can enable or disable required capabilities manually, if required. By default capabilities are set to auto. If a package contains resources that require specific capabilities, those capabilities are enabled by default Pic 4.

MSIX capabilities configuration

Pic 4. MSIX capabilities configuration

After all the required settings have been configured, either within the Project Details view or within the package creation wizard, all you need is to provide a path to the location to save the resulting MSIX/AppX package to and press Finish. As soon as the package is created, it is ready for deployment.