Launching Windows Store Apps On Stream Deck
source link: https://den.dev/blog/streamdeck-windows-store-apps/
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.
Launching Windows Store Apps On Stream Deck
Exploring the realm of application launches from a dedicated hardware control panel.
By Den Delimarsky in Hackery
January 21, 2021
Now Playing
I just recently got a Stream Deck - it’s a wonderful tool to automate some of the more boring (read: routine) tasks. Literally with a click of a button I can kick off a bunch of automation. Apparently it can do everything but launch Windows Store applications.
This is a bit of a problem, because I use several apps in that category - Spotify, Trello, and Slack, to name a few. Unlike your typical executable, Windows Store applications do not have an EXE file you can point Stream Deck to, and it won’t run shell commands out-of-the-box. I can’t even point the tool to a shortcut that launches a Windows Store application. What if we try a bit of a hack with shell:AppsFolder
?
We have Trello there. Right-clicking on the icon and creating a shortcut (it will default to Desktop) will easily allow me to point Stream Deck software to it and launch the application. But is there an alternative, that does not require me to deal with shortcuts?
Right-clicking on the shortcut gives a clue for what I need to look for to do an application launch:
There is the application ID, but it would be insufficient to paste it in the Stream Deck configuration UI to start the app - it will do nothing. Besides, the full application ID is not even visible in the dialog, and there is no way to easily grab it from there. Luckily, there is a command that can be executed in PowerShell, that will produce a list of existing AppX/MSIX packages, and I can run it in the Terminal:
Get-AppxPackage > apps.txt
This, in turn, will produce a text file, called apps.txt
, that will contain the list. Within that list, I can Ctrl+F
to find Trello (as an example):
This is helpful already! The problem is in the fact that I still don’t have any kind of executable that I can point to. Or do I? I have the full package ID that I can probably pass to some other process that can launch it. That process is explorer.exe
, and it requires me to pass the AppX ID as such:
start explorer.exe shell:AppsFolder\45273LiamForsyth.PawsforTrello_7pb5ddty8z1pa!trello
I can literally copy and paste this command into a Batch (.bat
) script, and then point a button on the Stream Deck to it. For all intents and purposes, a Batch file is just like any other executable.
Notice, however, that there is an exclamation mark after the package ID, that contains the string trello
- what is that? If you follow the InstallLocation
from the Get-AppxPackage
output, you will land in the application folder. This “magic” string is the application ID that you can grab from AppxManifest.xml
.
And before you ask, no, you can’t launch the Trello.exe
or a similar executable from within the application folder directly.
That’s it - with a Batch script, you should be able to quickly launch a Windows Store application without having to try to fiddle with shortcuts. You can spend 5 minutes doing something that could be done in 10 seconds.
Want to get more notes like the above? Subscribe to The Den!
A monthly newsletter about product management, engineering, and tinkering with code.
Feedback
Have any thoughts? Let me know on Twitter!
Recommend
About Joyk
Aggregate valuable and interesting links.
Joyk means Joy of geeK