I have one user who could not connect to our Citrix Metaframe Presentation Server from her home. She could connect just fine from other machines, and no other users were experiencing the problem, so I was confident the issue was with her personal computer. She was running Windows XP Home, and every time she successfully logged into the Web interface for Metaframe via the Citrix Presentation Server client 10. But when she executed one of her published applications, she received the following message:
“Closing the Citrix ICA client window will disconnect you from the Citrix Presentation Server. Are you sure you want to close and disconnect?”
She would click cancel, then she got this message:
“The remote session was disconnected because there are no Terminal Server License Servers available to provide a license. Please contact the server administrator”
“Some of your applications may not have been reconnected. If this message is not usually displayed at the end of your sessions, contact your administrator.”
The first thing I did was verify licenses were available on our Windows 2000 Terminal Server, and verified no errors were found in the server’s event logs. Nothing odd was logged; I saw her IP address connect, then disconnect in a normal fashion. Next she emailed me her XP event logs, as well as the Citrix client log file. Once again, nothing weird was apparent.
We upgraded her Presentation Server client, but nothing was different. We uninstalled the client, rebooted, reinstalled the client, but once again the errors occurred.
I finally came across this Technet article that describes a similar problem, but with Remote Desktop instead of Terminal Services. I figured RDC was close enough to TS, so I went ahead and deleted the following registry key:
She rebooted, and voila, she could connect to the Presentation Server and launch all her applications! The registry key is supposed to be recreated the next time the Citrix client is launched, but we rebooted first just to be safe. This key also needs read permissions assigned to the local users group.
In retrospect, I would have found the answer at eventid.net, but it never occurred to me to check there, since I never receive any errors, on the server or client side. Here’s a discussion on rolling out the change via a batch file.