Windows Developer Day, every Day
In the previous article, we introduced the basics of Adaptive Cards. In the Modern Application Experience section of Windows Developer Day, there is also a knowledge point to be highlighted:MSIX & Advanced Installer.
The following is the presentation of WDD:
MSIX
As described in Kevin Gallo on WDD, MSIX is designed to implement a complete containerized solution. It inherits almost all the important features and advantages of UWP and can be applied to all Win32, WPF, windows Forms and UWP applications.
It is important that the MSIX Packaging SDK is open-source on GitHub: GitHub Microsoft/MSIX-packaging
Description of Microsoft's official MSIX Packaging SDK:
The MSIX Packaging SDK project is an effort to enable developers on a variety of platforms to pack and unpack packages for the purposes of distribution from either the Microsoft Store, or their own content distribution networks.
It can be seen that it is a cross-platform SDK that allows developers on multiple platforms to use to package and package, in order to distribute it to Microsoft Store or the developer's own content delivery network.
The project contains cross-platform API support for unpacking. msix. appx files:
For details about the dependencies of This SDK, the installation environment requirements and the files corresponding to the make command on each platform can be viewed in GitHub. From the description, the project can be compiled on Windows, Mac, and Linux, and compiled on Windows for the Android platform.
Advanced Installer
Overview
Official Address: Advanced Installer Express Edition
Advanced Installer is a tool developed by the community and released the Advanced Installer Express version on WDD. It is a free tool that can modernize and create traditional desktop applications. appx package, that is, the Modern Application Experience mentioned above. the created. appx files can be published to the App Store, just as UWP can do.
Advanced Installer has the following features:
- Easy to switch-it can monitor the MSI/EXE Installer in the operating system and easily convert it to APPX and MSI/EXE packages using Advanced Installer;
- Integrated Virtual Machine-It can automatically start a virtual machine image and return the result to the active host after execution;
- Dedicated UI-low learning cost, full control of APPX generation options, the Operation Experience is similar to the Manifest editor of Visual Studio;
- The integrated VS-VS solution allows you to directly use the Advanced Installer integrated in VS to generate an APPX package;
- Desktop Bridge supplement-it covers all the missing features of Desktop Bridge;
Integration of VS is very meaningful and provides an important prerequisite for CI (continuous integration) support during development. In addition, Advanced Installer integrates plug-in support for TFS, Jenkins, and TeamCity. If you are interested, you can download the corresponding plug-in on the official CI page: Installer Continuous Integration
In addition, the addition of Desktop Bridge is important for developers who have used Desktop Bridge. The official instructions are as follows:
1. Convert any installation, no matter if it installs silently or not.
2. Generate a conversion project: reload, edit and rebuild your APPX package in seconds.
3. Build APPX and MSI/EXE packages from the same project, continue serving your Windows 7 users.
4. Built-in Visual Studio integration for debugging and build automation.
5. You do not need the matching Docker image anymore; you can use any virtual machine. Hyper-V and VMware come with built-in management support.
6. Detection of high-level constructs, like file type associations or firewall rules and mapping those entries accordingly in the AppXManifest file.
7. It's all GUI based, so no more problems with discovering command line switches or typos.
8. Your application can be launched with an argument (i.e., shortcut arguments).
9. Your package can contain multiple applications.
10. One-click digital signature support for sideloaded packages.
Actual Operation
After the official download is opened, you can see the operation options on the home page:
- Desktop Bridge Project -- you can create a new Project, convert a Desktop application to an APPX application, and configure various features of the UWP application;
- UWP Appx-you can import an APPX package and adjust each configuration item again;
- Convert Desktop App-monitors Desktop applications in the system and performs APPX conversion;
I use a simple Windows Form EXE for testing. Let's take a look at the conversion guide:
Here, Windows Form EXE in the newly created Project is successfully built into the APPX package. Next, we will edit the main part of Advanced Installer. You can edit the following parts:
- Product Information-General Product Information, including Product name, version number, digital signature, and upgrade policy
- Universal Windows-UWP application features, such as magnetic stickers of various sizes, startup screens, and application permissions, are similar to Manifest of Visual Studio.
- Resources -- Resources to be attached, including registry operations, file opening Association, and additional assembly
- Package Definition-Definition of the installation Package, including the default installation location and installation permission
- Requirements-Requirements of the installation package for System Configuration
- User Interface -- configuration of various forms during installation
- Syetem Changes -- set environment variables and register COM components
Notes:
Run in VM operation. The Windows OS version must be Enterprise. Because I am still a Professional Edition, I will not try this function for the moment.
Focus on the digital signature section of the application:
To allow the converted APPX to be directly installed on the system, you need to set a digital signature. Here I use an existing PFX digital signature file for UWP applications. If you have an authenticated digital signature certificate, you can also use it.
Let's take a look at the program directory after the conversion is successful:
- BuildUwpAppXSetupFiles -- this directory stores APPX files
- Setup Files -- this directory stores the MSI installation package. As mentioned above, Advanced Installer will generate both the APPX and MSI installation packages.
- APPXDemo. aip -- Advanced Installer project file, which can be opened and edited
Next let's take a look at the uwp appx installation:
Installation successful. After normal startup:
The usage of MSIX and Advanced Installer is here. Because there is no Enterprise operating system, the VM function is not tested. If you are interested in Advanced Installer, you can perform more in-depth research.