How to execute Process commands (or similar) using a Universal Windows Platform (UWP) App?

There are – limited – ways to achieve similar behavior.

  1. You could use LaunchUri to trigger other apps which registered for a certain URI-Scheme. This should work for your webbrowser scenario. More details here:
    https://msdn.microsoft.com/en-us/library/windows/apps/windows.system.launcher.launchuriasync.aspx

  2. You could trigger another app and get results back from it using LaunchForResults. The called app has to support this. More details here:
    https://msdn.microsoft.com/en-us/library/windows/apps/mt269386.aspx

  3. You could trigger App Services provided by another app. The called app has to support this. The app service will be executed in background. ( I think this is pretty cool.) More details here:http://blogs.msdn.com/b/mvpawardprogram/archive/2015/06/11/writing-windows-10-app-services-in-javascript.aspx

  4. This is a little hacky: I’m not sure if this still works but it did work for Windows 8.1: You could create a so called “Brokered Component”. This allows you to trigger everything from you app on you machine, but you won’t be able to publish a brokered component into the store. This also allowed Process.Start() on Windows 8.1. It only worked for sideloaded apps. I’m not sure if it still works on Windows 10.
    More info here: https://msdn.microsoft.com/en-us/library/windows/apps/dn630195.aspx

Summary:
Starting another app is pretty easy as long as the target app registered as app service or registered a protocol handler (Uri scheme).
Starting scripts or other *.exe is impossible if option 4 doesn’t work any longer.

Leave a Comment