Purpose of Uap5:AppExecutionAlias vs Uap3

MVP

The Uap3 schema includes the ability to define an AppExecutionAlias as an extension to an app (uap3:AppExecutionAlias - Windows UWP applications | Microsoft Learn), and this has been recommended to us in the past to allow programmatic starting of the app using the alias.

 

I recently noticed the Uap5 version of this (uap5:AppExecutionAlias - Windows UWP applications | Microsoft Learn) . This version includes an optional Subsystem attribute (desktop4 or uap10) to be added that specifies either "console" or "windows".

 

Can we get some information on why this is needed and why it might be important to be used?  I'm happy to assume that the additional schemas would be available to the target platforms, so what difference in functionality is there to migrate to the Uap5 format?

2 Replies
Presumably it sets the subsystem PE header in the synthetic executable, meaning that if the app being aliased is a command line app that needs to output text to the console, it should be "console" and if it's a GUI app it should be "windows".
Hmm. That sounds like an advantage without any disadvantages and we should be using uap5 since uap5 is available on currently supported OSs.