Summary
Citrix Technical Support often receives calls about the launching and abnormal disconnecting of ICA sessions. This article provides a logic process with respect to troubleshooting the connectivity of an ICA session. Many of the referenced articles have additional links. Make note of the links within the referenced articles. In addition, search the Citrix Knowledge Base if there is a specific error message.
Connecting to a Published Application
The ICA client sends out request for a published application. The MetaFrame XP Data Collector, or MetaFrame 1.8 Master Browser resolves the connection to the least busy server. The QFarm and Qserver commands can help determine what server is the least loaded. Use the ICA Client Connection Center or open up the resulting ICA file in a text editor to determine the logon server. Citrix Support may ask customers to publish an individual copy of Notepad on each server to help in determining connectivity issues. Once the logon server is determined, compare a ICA Desktop connection versus a Published application connection and follow the below steps.
CTX101691 - Active Server Pages error ASP 0113 and Applications are slow to enumerate within NFuse
Troubleshooting
The Listener end waits on “ICA” string detect, Winstation state to CONNQ (Connection Request), attempts to get/verify a Windows license, accepts the connection (Gina), and queries the client configuration for available virtual channels.
1. Is the ICA-TCP listener defined in Citrix Connection Configuration, enabled, appearing in Terminal Server Administration (Tsadmin.exe) and editable? If the listener does not appear in Terminal Server Administration, check the Event Viewer for potential issues where Wsxica.dll failed to load. Wsxica.dll and RDPwsx.dll depend on TermSrv.exe. Ensure the RDP listener does not experience similar issues.
• CTX564871 - How to Disable or Enable User Logon from a Command Line, Protocol Level, or Management Console
• CTX103200 - Error 5 � Access is Denied when recreating the ICA listener
• CTX564564 - Error: "Connection 'ica-tcp' Could not Be Deleted "RegWinStationDelete Failed". Error 5 - "Access is Denied"
• CTX106039 - Error: Can't obtain the state of connection 'ica-tcp' from the registry. (Error 2: The system cannot find the file specified.)
• CTX105571 - Users Unable to Connect to Presentation Server After Installing Windows Server 2003 Service Pack 1
2. For Terminal Server Edition 4.0 and Windows 2000 are listening stacks available? Wdica.sys is dependant of Termdd.sys
• CTX719861 - Idle WinStations Fail to Regenerate After Reboot or Mutiple Logons or Event ID 34
• Use Qwinsta /? at a command line.
3. Do basic ICA connectivity tests work?
• CTX075552 - Troubleshooting ICA 32-bit and Web Client Connectivity Issues
• CTX104147 - Explaining ICA Session Reliability, Common Gateway Protocol, on TCP Port 2598
• CTX655216 - How to Change the ICA Port Number Assignment
C:\>telnet “MFSERVERNAMEorIP” 1494
⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA
⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA⌂⌂ ICA
4. Do you get a Microsoft or Novell Gina? Enable the prompt for password check box within the ICA listener. This determines if the listening stack is created within Terminal Server Administration. Crss.exe and winlogon.exe should be the only running process on the session. Common reasons for a failure at this step are either network or Terminal Server License related. Wsxica.dll verifies a user has rights to a published application. Winlogon.exe launches userinit.exe. Userinit.exe reads the appsetup key under:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Winlogon
and cmstart.exe is launched.Ctxnotif.dll is loaded in the context of the system account by Winlogon.exe. The following registry key is read:
HKEY_LOCAL_MACHINE/SOFTWARE/Microsoft/WindowsNT/CurrentVersion/Winlogon/Notify/MetaFrame
• CTX564283 - Troubleshooting 1003 and 1004 Terminal Server Licensing Errors
• CTX101380 - Error: Network or dialup problems are preventing connection to MetaFrame server
• CTX110891 - ICA Connection Starts and Immediately Disappears
5. Citrix attempts to obtain a valid Citrix License. Search the Event Viewer and then the Citrix Knowledge Base to resolve any Citrix Licensing issues.
6. The logon processes, userinit.exe (profiles), usrlogon.cmd, cmstart.exe, icast.exe,and so on start to load. If some of the start up processes trap, the session is destroyed before the application is presented. When passing through credentials, this is often difficult to determine, that is why Step 4 is so important. Check the Event Viewer and enable Dr. Watson. Icast.exe (application launcher) waits for Wfshell.exe to complete before launching the initial program for the published application. If Cmstart.exe is not listed under AppSetup value, Wfshell.exe is not launched and Icast.exe times out. When the userinit.exe hangs (a Microsoft process), you cannot start a new application from the same server until the userinit.exe process has completed.
• CTX101705 - Troubleshooting Slow Logons
• CTX107051 - Blue Background Upon Connecting with ICA After Installing Microsoft Rollup 1 for Windows 2000
• CTX105161 - Cmstart.exe Crashes on Windows 2003
• CTX983798 - What Does the CMSTART Command Do?
• CTX104352 - Explaining CtxHide.exe and hiding UsrLogon.cmd
• CTX543560 - Connecting to a MetaFrame XP Server Shows a Popup Window Indicating initializing. The Window Then Disappears.
• CTX103349 - Concerns about Switching from Application server mode to Remote administration mode and then back again
Pmonitor.exe is affecting session start-up
7. DLL Loading Order:
• Current directory of the image file
• The process's current directory
• Windows system directory
• Windows directory
• Directory listed in PATH variable
8. Trace the session, if needed, with Citrix and/or Networking utilities.
• CTX104578 - Using Citrix Diagnostic Facility and the Access Suite Console for Tracing
• When multiple users log on simultaneously using smart card authentication, traps or deadlocks may occur. As a result, client sessions may become unresponsive and new connection requests may be refused.
[From XE104R02W2K012][#130163]
9. Once the session is established, the session may become disconnected.
• CTX708444 - Configuring TCP KeepAlive Values to Improve WAN Links and ICA KeepAlives to Place ICA Session in a Disconnected State
• CTX435418 - Troubleshooting Disconnected Sessions in Secure Gateway
• CTX107232 - ICA Session Closes Shortly After Connected