When a user tries to launch any published application hosted on their XenApp or XenDesktop 7 App Edition server, the following error occurs:
“The Citrix server is unable to process your request to start this published application at this time. Please try again later. If the problem persists, contact your administrator.”
CtxHide.exe is responsible for hiding the DOS window in which UsrLogon.cmd is running. Cmstart.exe is the initial process that is run when an ICA session is launched, it is called by winlogon. Cmstart.exe is responsible for starting Wfshell.exe which loads the virtual channels and Cltmgr.exe which is the client manager. It is also associated with Icast.exe. If CMSTART is missing from the AppSetup Registry key, then Wfshell.exe is not launched and Icast.exe times.
––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––––
Following are the possible solutions to troubleshoot the error:
In the PATH Environment variable, Move the location of the third party software variables after the XenApp variables. After the change, XenApp locates the correct version of cmstart.exe.
“%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32 \WindowsPowerShell\v1.0\;C:\Program Files (x86)\Citrix\system32\;C:\Program Files (x86) \Citrix\System32\Citrix\IMA;C:\Program Files (x86)\Citrix\System32\Citrix\IMA\Subsystems; %SystemRoot%\System32\Citrix\IMA;C:\Program Files (x86)\Citrix\system32;C:\Program Files (x86) \Common Files\Citrix\System32\;C:\Program Files (x86)\ThirdParty\Bin\;C:\Program Files (x86) \Microsoft SQL Server\100\Tools\Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;”
Complete the following steps to add values to the AppSetup String Value and resolve the issue:
Caution! Refer to the Disclaimer at the end of this article before using Registry Editor. NOTE: Duplication of any values in this key will lead to application and desktop launch failures. See the screenshot below for reference.
Open the Registry Editor and go to the following registry key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon
Double-click the AppSetup value.
If not already present, add the data value cmstart.exe after Cmd separated by a comma.
Add the data value CtxHide.exe before the data value UsrLogon.Cmd. There are no commas placed between CtxHide.exe and UsrLogon.Cmd.
Note: In a XenDesktop 7 App Edition scenario on Windows Server 2012, CtxHide.exe will not be present on the system, and does not need to be included in this registry update.
Following is an example of the AppSetup Value Data: CtxHide.exe UsrLogon.Cmd,cmstart.exe.
Following are two causes for this error to occur:
One of the possible causes for this issue is that the third party software installation utilizes an executable file named cmstart.exe and modifies the environment variables to point to that executable. Because XenApp uses an executable named cmstart.exe for the launch of published applications, it might confuse and locate the cmstart.exe of the third party software instead. By using the wrong version of cmstart.exe the launch process breaks. One common reason for XenApp to locate the wrong cmstart.exe is because the third party software might have modified the environment path variables to point to its own cmstart.exe. XenApp does the same to locate cmstart.exe for published application launch process. So the variables provided by the third party software get the priority.
This is the default environment path variable before the third party software installation on a XenApp 6.0 server. The location of cmstart.exe of XenApp 6.0 is “C:\Program Files (x86)\Citrix\system32\cmstart.exe”.
“%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\System32\Wbem;%SYSTEMROOT%\System32\ WindowsPowerShell\v1.0\;C:\Program Files (x86)\Citrix\system32\;C:\Program Files (x86)\ Citrix\System32\Citrix\IMA;C:\Program Files (x86)\Citrix\System32\Citrix\IMA\Subsystems; %SystemRoot%\System32\Citrix\IMA;C:\Program Files (x86)\Citrix\system32;C:\Program Files (x86)\Common Files\Citrix\System32\;C:\Program Files (x86)\Microsoft SQL Server\100\Tools\ Binn\;C:\Program Files (x86)\Microsoft SQL Server\100\DTS\Binn\;”
This is the modified environment path variable after the third party software installation on a XenApp 6.0 server. The location of cmstart.exe of the third party software is “C:\Program Files (x86)\ThirdParty\Bin\cmstart.exe”.
C:\Program Files (x86)\ThirdParty\Bin\;“%SystemRoot%\system32;%SystemRoot%;%SystemRoot%\ System32\Wbem;%SYSTEMROOT%\System32\WindowsPowerShell\v1.0\;C:\Program Files (x86)\ Citrix\system32\;C:\Program Files (x86)\Citrix\System32\Citrix\IMA;C:\Program Files (x86)\ Citrix\System32\Citrix\IMA\Subsystems;%SystemRoot%\System32\Citrix\IMA;C:\ Program Files (x86)\Citrix\system32;C:\Program Files (x86)\Common Files\Citrix\System32\;C:\ Program Files (x86)\Microsoft SQL Server\100\Tools\Binn\;C:\Program Files (x86)\ Microsoft SQL Server\100\DTS\Binn\;”
The Cmstart.exe and/or Ctxhide.exe are not listed under the AppSetup registry key on the XenApp Server:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows NT\CurrentVersion\Winlogon\AppSetup
CTX983798 – Purpose of CMSTART command