Citrix XenDesktop Desktop icons are by default the same pictures for all delivery groups and quite boring. Back in the old XenApp days, the icon for Desktops could simply be picked during publishing. With XenDesktop, you have to use PowerShell (welcome to the future!) and with version 7.13 the get-ctxicons (Retrieves icon data from various sources) was removed and makes the process more difficult.

The default view of Desktop icons

In case the user has several Desktops assigned, then he gets this boring view in Receiver

 

The process to get a custom desktop icon

  • Convert image (PNG) to ICO file format
  • Convert ICO into base64 file
  • Import base64 file
  • Assign new custom icon to delivery group
  • For StoreFront disable desktop substitute images

Here are more details

 

My little PoSh script

To simplify the process I have created a PowerShell script. All you need is an ICO file and the name of the delivery group (not the display name). Getting the ICO file is also quite simple and all you need is an image in PNG (make sure it has a transparent background) format. Go to http://convertico.com, upload the PNG and you get your ICO file right away. Next start PowerShell from XenDesktop Studio (next to action)


PowerShell usage
PoSh: New-DeliveryGroup-Icon.ps1 <path to ICO file> <delivery group name>


StoreFront
To see the icons also in StoreFront, the Substitute Desktop Image must be disabled
PoSh: .\Program Files\Citrix\Receiver StoreFront\Scripts\ImportModules.ps1
PoSh: Disable-DSStoreSubstituteDesktopImage -SiteId 1 -VirtualPath /Citrix/Store

 

 

The look after importing custom Desktop icons

This is how it looks for the same user but with custom icons



Download

Here is the PowerShell script

New-DeliveryGroup-Icon.zip


Add comment