Hang on, I’m primarily a VMware virtualization focused blogger aren’t I? Mostly, yes, but there are environments I work on that have other virtualization products installed in them. One of these, a PoC for a project, had a XenDesktop Express installation running in it that had an expired trial license.
I was able to retrieve a new license file from Citrix’s website…
…and sought to use the Desktop Studio to apply it. However, I received a message back during the process to say that the License Server was not available:
Citrix License Server currently unavailabl
e. Check the license server and make sure it’s running, then try again.
lection.Targ etInvocation Exception Exception has been thrown by the target of an invocation .
sole.Common. CallbackEven tArguments.O perationComp leteSynchron izer`1.GetRe sults()
sole.Common. CallbackEven tArguments.O perationComp leteSynchron izer`1.WaitF orResults()
sole.UI.Lice nsing.Mmc.Li censingResul tPaneViewMod el.UploadFil eToLicenseSe rver(String fileName, Boolean overwrite)
sole.UI.Lice nsing.Mmc.Li censingResul tPaneViewMod el.c__Displa yClass20.< ;AddLicense& gt;b__1e()
sole.CommonC ontrols.Prog ressDisplay. GenericProgr essOperation .PerformOper ationInterna l()
sole.CommonC ontrols.Prog ressDisplay. ProgressWind owOperation. PerformOpera tion()
sole.CommonC ontrols.Prog ressDisplay. ProgressWind owViewModel. PerformActio n(ManualRese tEvent operationC omplete)
sole.Models. CallbackEven tArguments.S criptExcepti on Citrix License Server currently unavailabl e. Check the license server to make sure it’s running, then try again.
sole.PowerSh ellInteracti on.XDCommand .EndExecutio nAndCheckErr ors(Progress Model progressMo del)
sole.PowerSh ellInteracti on.XDCommand .RunTypeUnsa fe()
sole.PowerSh ellSdk.Licen singService. Scripts.AddL icenseFileSc ript.RunScri pt()
sole.PowerSh ellInteracti on.ThreadedP owerShellScr ipt`1.RunScr iptInternal( )
verDown\nSys tem.InvalidO perationExce ption: License Server is not running.
agement.Auto mation.MshCo mmandRuntime .ThrowTermin atingError(E rrorRecord errorRecor d)
============ ============ ============ ============ ============ ===
A quick look in the Windows Services tool showed that it was indeed not running. Restarting it only produced another failure and a Windows 1067 error.
It turns out that when trying to download the license file it had in fact downloaded the web page’s source into the .lic file instead of the license text! Just opening the license file showed this. Scrolling down though you find the real URL for the license file:
Just pop that into your browser address bar and download the file.
Of course, the Licensing Server still won’t start as it’s trying to read the incorrectly populated license file and failing. To resolve this, just delete the .lic file that it has tried to import from c:\program files(x86)\citrix\licensing\myfiles:
The service will now start again and you can import the correct license file.
Michael Poore is a Senior Consultant for Virtual Clarity, a small virtualisation / cloud consultancy based in London and San Francisco. Michael works on all aspects of datacenter virtualisation, automation, orchestration and management for various global companies. He started the vSpecialist blog in 2008 and convinced co-author Jeremy Bowman to join in over a beer a while later.