Automated shortcut creation for locally installed apps via Citrix Receiver

In the good old times we had Citrix pnagent and with it a dead simple way to customize the start menu of our users with the apps they had access to. Things are changing with Storefront and XenDesktop 7.x. Receiver still pushes icons of the users apps into the start menu. But as apps and desktops can’t share a single session a second session is started when they click on an icon pushed by Receiver. Gladly there is a way to tell Receiver if it is able to find a local application then start this instead of a new Citrix session.
To accomplish that you have to

  1. Edit the description of a published app and add the string KEYWORDS:prefer=Shortcutname
  2. Create a corresponding shortcut with the name “Shortcutname”

so that Receiver is able to match the published app with the local shortcut. For details have a look here: Have fun editing all your hundreds or thousands of apps…


I wrote a script which creates the app description and the shortcut for all apps in your site automatically. Of course you can limit it to specific apps or folders – have a look at the parameters. The script enumerats all your apps. Then it sets the application name as prefer keyword and as the name of the shortcut. The script has to be executed on a Citrix Controller with elevated rights.

The output looks like this:



Note the application 7-zip: It is located in the folder ‘Sales’. The script takes care of that by adding ‘Sales-‘ in front of the application name because the shortcuts have to be placed in one root folder – there is no support for sub folders. Because of that the names of the shortcuts have to be unique, that’s why we have to add the folder name to the shortcut name.

You can download the script on my GitHub page. All of my scripts in GitHub repositories comply with common PowerShell best practices and are fully documented:

Leave a Reply

Your email address will not be published. Required fields are marked *