Error:“Citrix HDX Engine has stopped working”.ICA Session Disconnects Immediately After Reaching The Desktop

Error:“Citrix HDX Engine has stopped working”.ICA Session Disconnects Immediately After Reaching The Desktop

book

Article ID: CTX218913

calendar_today

Updated On:

Description

ICA session disconnects after reaching the desktop. Before disconnecting we get the pop up that “Citrix HDX Engine has stopped working”.
 
User-added image
You notice two wfshell.exe*32 running for the disconnected user.

User-added image
Intermittently you would also see an event ID 1000 for Wfica32.exe crashing with error code 0xc0000005.
 

 

Environment

Caution! Using Registry Editor incorrectly can cause serious problems that might require you to reinstall your operating system. Citrix cannot guarantee that problems resulting from the incorrect use of Registry Editor can be solved. Use Registry Editor at your own risk. Be sure to back up the registry before you edit it.

Resolution

RESOLUTION 1
 
Remove the extra entry of cmstart.exe and keep just one instance of cmastart.exe under :
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\AppSetup

RESOLUTION 2

If the following registry has file paths for both userinit.exe and KUsrInit.exe then remove the userinit.exe under below registry key:
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\UserInit

 

Problem Cause

CAUSE 1:
 
There were two entries for cmstart.exe under the below registry key which in turn launched two wfshell.exe in the same session with each sending a EUEM (End User Experience Monitoring channel, related to HDX) bind request to the client with the second bind getting rejected resulting in a closed connection.
 
HKLM\Software\Microsoft\Windows NT\CurrentVersion\Winlogon\AppSetup

CAUSE 2
Some applications like Dell KACE try to replace Windows userinit with its own KusrInit but for the failing VDAs the Winlogon registry key Userinit has a value with both userinit.exe and KusrInit.exe while the working VDAs UserInit has only KusrInit.exe. When both userinit.exe and Kusrinit.exe exist this will result in 2 userinit processes running in the session which launches two instances of cmstart.exe and and 2 instances of wfshell.exe which causes 2 EUEM Virtual Channel bind request sent to the ICA client and the ICA client rejects the second request and closes the connection.

 

Issue/Introduction

ICA session disconnects after reaching the desktop. Before disconnecting we get the pop up that “Citrix HDX Engine has stopped working”.

Additional Information

Cmstart.exe is a process that runs when you log on to the XenApp server. It is called by winlogon. It is associated with Wfshell.exe, CltMgr.exe, and Icast.exe files. 

https://support.citrix.com/article/CTX983798

https://support.citrix.com/article/CTX132243 

https://support.citrix.com/article/CTX129358