Creating .LNK Shortcuts to Modern Windows 8 Applications

Modern UI (Windows 8) applications differ fundamentally from widows explorer initiated applications prior to the Start Screen because we are initiating the “shell” of explorer with a shortcut instead of directly calling an executable.

This new approach for invoking applications has similarities with the introduction of Windows Installer shortcuts, App-V shortcuts and even how shortcuts transitioned from Windows 3.11 to Windows 95. Invoking a shortcut is not simply finding a file to execute, it’s requesting that another process invoke our application.  With the Start screen of Windows 8, AppX applications are referenced within an internal database that Explorer access instead of simply having shortcuts sitting in subdirectories as previous versions of Windows did.

Explorer.exe is able to reference all applications by calling the “shell” which is tracking applications.  By calling on the shell to show the “AppsFolder”, you’ll see below that Windows is constructing a virtual directory where the Modern UI applications appear to exist.

Eg.  explorer.exe shell:AppsFolder

Produces:

The information being displayed from the Apps Shell folder shows all AppX applications as having a “Long Display Name” but most importantly, an AppUserModelId that is a unique reference.  It's this Id that allows Windows Explorer to invoke the Modern UI applications.

Searching the registry shows that AppUserModelId values are recorded under

HKEY_CLASSES_ROOT\ActivatableClasses\Package\ …   \Server\ …

The particular example of Calculator’s AppUserModelId can be put in a standard shortcut to allow Explorer to call the application via the shell.  The syntax is:

explorer.exe shell:AppsFolder\Microsoft.WindowsCalculator_8wekyb3d8bbwe!App