How to use hot-pluggable client USB storage devices with Citrix Presentation Server

A lot of people have been complaining about USB disk support in Citrix Presentation Server.

A lot of people have been complaining about USB disk support in Citrix Presentation Server. When a user connects a USB drive while working in a Citrix ICA session, the drive will not become visible in that session. While Microsoft has already added support for this in their RDP protocol, Citrix lags behind on implementing this in ICA.

While researching the possibilities of adding support for this ‘hot plugging’ myself, I stumbled upon a great tool called ‘USBDLM’ written by Uwe Sieber.  By default, Windows allocates the first available drive letter to an inserted USB storage device which makes management of this device somewhat troublesome. USBDLM installs as a service on a Win32 client and enables YOU, the administrator, to predefine where and how USB disks are made available to your operating system using a simple ini-file. (Just the way we like it!)

While reading the manual, I also came across the possibility to mount USB storage devices to a predefined folder. This is when I realized that this tool could be of great value to the Citrix community. Below you will find a set of instructions on how to make hot plugging USB disks possible within your environment.

The How to Guide

First of all, download USBDLM from, extract it, and follow the simple steps as described below. Mind you, USBDLM is NOT free for commercial use so please read the license agreement.

Step 1: Edit the configuration file (on the client)

In the UBDLM directory you will find a USBDLM_example.ini file. Copy this file, rename it to “USBDLM.ini,” and open it using notepad. Scroll down to the [setting] part and add the “ForceDriveLetters=1” setting. Now, scroll down to the [DriveLetters] section and change the “Letter1=” to “Letter1=C:\USB\%DiskName%”.  Make sure you save the ini file in ANSI format. UNICODE is not supported.

Step 2: Creating a mount folder (on the client)

As said, USBDLM is able to mount a USB storage device to a folder instead of assigning a drive letter to it. To enable this feature we need to pre-create a folder where USBDLM can mount the USB storage device. Following the previous step we need to create a folder called “C:\USB”. The folder %DiskName% will be auto-created.

Step 3: Making all USB storage devices available through one drive letter (on the client)

Substitute the folder that we created in the previous step using the user’s login script. CMD-based login scripts could add the following line: “SUBST X: C:\USB”.  From now on all client USB devices will be available though this drive letter.

Step 4: Enable Client drive mappings (on the server)

There are a number of ways to enable client drive mapping for your Citrix farm. Use the method that best suits your environment.

Step 5: Log on to Citrix farm

Log on to your farm with client drives enabled. The substituted drive will be visible as a normal client drive. Now insert your USB storage device and wait for the contents to show up.

Here's a screen shot from the client showing the local USB device and the remote folder.

Have fun!

Dig Deeper on Citrix virtual desktops

Join the conversation


Send me notifications when other members comment.

Please create a username to comment.

nice idea but i can't see it taking off if it's not free for commercial use
So what if it doesn't take off? I don't think that was the point of this article. The point was to share a solution if this is a problem you face in your environment. If this is a problem for you, but you don't want to pay for this software, then it's probably not that big of a problem.

This is a goog workaround, but it will be more useful that Citrix make this behavior automatic, and not let administrators do their job.
Thanks for information and little "how to"
like i said it's a nice idea.  It's seems like it could be a good bit of software and it could be useful but with it having a cost implication IMO it will stop a lot of people from using it

I thought the whole point of forums were to express views on a variety of things.  Obviously not!
This feature is mentioned in an article here 
If you are interested in making this feature  register here and maybe CITRIX will make it part of their product.
Hi There
We are using this tool for about 4 months on our HP Thinclient Windows XPe and the mentioned problem USB hotplug vs presentation server 4.
It works well, hopely Citrix will make some action about this chapter and get a tool standard intergrated but its the Client side ! 
A Linux thinclient (like pallas athena) will offer the usb hot plug standard!
After all the tools works fine, we are distributing the settings/software with Altiris, but hopely in the future there will be support to hot plug a cd-rom drive to the subst folder.
many smileys
There is another workaround for mapping removable drives into a running session. This one does not require anything but some simple instructions to your users. Simply plug in your USB key and then disconnect and reconnect your session. The drives will be re-enumerated during reconnect, so you will see your removable drive in your session. This will work with PS4.0HRP2 or higher and with PS4.5. How do I know this? I just happen to be the Citrix developer who implemented it.
Bob Janssens
Disconnecting and reconnecting is often not acceptable for the users. They WILL be complaining about that. It would be much cooler if the Citrix client would just enumerate drives when a WM_DEVICECHANGE message comes along. Also when using a published desktop it would be cool if the users can eject the USB key from their session. And being able to predefine the drive letter used would be very cool from an administrators point of view.
I agree it's not ideal either. Just another workaround that may be useful in certain situations, until a more complete solution is available.
No need for a workaround with the Linux client - hot plugging works fine on my Thinstation clients.
The solution is very good and all USB key or drive work correctly under Citrix.
But the problem is when you have finish to copy your files on the USB KEY how disconnected this key thru the session Citrix ?
It's not recommended to remove the key without stopped it and I have find a solution !
Have you an idea about that ?
Try this tool:

I think it's easier to use ...


I have been looking for a solution for this for some time. I am using this with a few users and it works great!

Some users are running a seamless Citrix desktop environment. They dont even realize they are not working locally. A script signs uers on when they sign into the network and logs them off locally when they end the citrix session. To have users logon and off is not something I cannot afford. 

Thanks for the info!