Citrix Admins out there probably know the issue; a user reports a problem and you need to troubleshoot the problem on the specific server that this user was logged on to. Logging on with user credentials to a certain server is not that easy, unless you create/modify a published desktop (or published application for that matter).
I created a little tool which allows you to easily connect to a published resource on a specific server. You can download it from the Tools section of my site and it’s called ICA Connect.
ICA Engine (wfica.exe) – process that uses the ICA protocol to connect to published apps and desktops. Custom ICA files are no longer supported. Receiver Updater stops working with “Problem Checking for updates” error). It is not necessary to install SC reader drivers in VDA/terminal server. ICA File Syntax. ICA files are usually generated by an application such as the ICA File Editor or Application Configuration. An ICA file can also be used to create custom WinFrame client diskettes.
This tool was created to be used with Login VSI, this tool may therefore not be used with other benchmarking or loadtesting tools than Login VSI.
Using it in your Citrix environment for troubleshooting or to allow end-users to use it is allowed.
ICA Connect uses the locally installed ICA Client to create the connection, so be sure that you have installed a valid client. I actually tested it only with Citrix Receiver 3.1, but I think it should work with ICA Client 10 and up. Another prerequisite is to have .Net Framework 2.0 installed.
Usage
To get the complete list of options, use:
This will output the following:
The Server, User and Password arguments are mandatory.
Connecting to a specific server
To connect to a specific server, use the following command:
This will connect to server XASRV001 with user TestUser1 in domain LAB. It will connect to the server’s desktop, it could be that you have to define a Citrix Policy allowing connections to the server desktop. You can also define a published application or published desktop name:
This allows you to connect to the published application named “MyPublishedApp” on server XASRV001. So the connection will bypass Citrix loadbalancing and connect directly to the server.
Load Balancing
To use the loadbalancing functionality of Citrix itself, use the following command:
This uses a connection to XASRV001 to make the ICA connection to published application named “MyPublishedApp”. With this connection, the defined load evaluators will be in effect and the ICA connection is made to the server with the least load.
By default (if not defined), the load balancing method is HTTP. If TCP is used in your environment, you can define this in the commandline:
Modifying appearance
Using this tool, you can also define the resolution and colordepth. Valid colordepth options are as follows:
- 16
- 256
- 16bit
- 24bit
The color depth is defined by the “/color Depth” switch:
This will use 16bit color depth in the connection. The screen resolution can be used by defining the “/resolution WidthXHeight“. The resolution size is split by the “x” character. For example: the 800 by 600 screen size is defined by “800×600”:
It probably goes without saying, but all the command line options can be defined.
More information
If you need more information about this commandline tool, feel free to leave a comment or contact me via email.
Update
I’ve updated the version of ICAConnect, the /xendesktop option has been removed (since it actually didn’t make any difference) and I’ve added the following options:
- /encryption EncType
- /silent
The /encryption parameter allows you to define the session encryption. Valid values are as follows:
- Basic (basic encryption)
- RC5-Logon (RC5-128bit for logon process only)
- RC5-40 (RC5-40bit)
- RC5-56 (RC5-56bit)
- RC5-128 (RC5-128bit)
The /silent switch allows you to suppress all messages at the console. So, connecting to server XASRV001, with RC5-128bit encryption in silent mode would be done as follows: