ICA Client Object SDK
Overview
The ICA Client Object Software Development Kit (ICOSDK) is useful for customizing the operation of the ICA Client. It provides a set of standard scripting interfaces or APIs that allow you to interface with the ICA Client software and control it from third-party applications. ActiveX controls and Netscape Plug-ins are two of the enabling technologies that allow you to embed objects within container applications such as Internet Explorer, Netscape, Microsoft Word, and Excel. The ICA Client Object implementation is based on these two embedding technologies.
Important: The ICA Client Object is included with the Presentation Server (ICA) Client. The files that support ICA Client Object are WFICA.OCX, NPICAN.DLL, and ICACLOBJ.CLASS. These files are installed automatically when the ICA Client is installed. No other files need to be copied and nothing has to be configured to get ICA Client Object working.
Programmer's guide for version 10.x
Latest changes in version 11.2
Step-by-step getting started tutorial for ICO SDK and Simulation APIs
ICA Client Object SDK Articles
-
How to Allow Custom Virtual Channels Created with ICO in Version 10.00 of the Windows Client - (12 Aug,2008 by Citrix CDN -- viewed times.)
-
Citrix ICA Client Object SDK Overview - (12 Aug,2008 by Citrix CDN -- viewed times.)
-
ICA Client Object and Workspace Control - (12 Aug,2008 by Citrix CDN -- viewed times.)
Comments (5)
Apr 30, 2008
Anonymous says:
Hello, I have a problem using the latest version of ICO (2.5 from ICA Cle...Hello,
I have a problem using the latest version of ICO (2.5 from ICA Cleint 10.2)
When I have proprety IPLaunch set to True I cannot get session sharing to work fine when launching multiple Apps but everything else seems to work (connect, diconnect, logoff ...)
When I set IPLaunch to False then Session Sharing is working like a charm but none of my Logoff or Disconnect Calles seems to work anymore.
Did someone ran into the same issues ?
Thanks in advance,
Ilan Belehssen
Feb 24, 2010
Anonymous says:
Please note latest changes to the ICA Client Object (ICO) in Version 11.2 at: ht...Please note latest changes to the ICA Client Object (ICO) in Version 11.2 at: http://support.citrix.com/article/ctx123616
Oct 13, 2010
Anonymous says:
Can ICO read the virtual channels while the session is in a disconnected state?Can ICO read the virtual channels while the session is in a disconnected state?
Aug 07, 2012
Vipin Borkar says:
One of our thin client partner has following questions about ICA Client Object A...One of our thin client partner has following questions about ICA Client Object API.
They are using the C# code as shown below and are facing below mentioned problems:
1) I can not connect to the Server.
2) ica.GetLastClientError() return 1030;
3) ica.GetLastError() return 70;
What can be infered from these error codes? what must be the problem?
Code snippet:
=============
static void Main(string[] args)
ICAClientClass ica = new ICAClientClass();
// Launch published Notepad if you comment this line, and uncommented
// the one above you will launch a desktop session
ica.Application = " " ;
//ica.InitialProgram = " #Excel2010″ ;
// Launch a new session
ica.Launch = true;
// Set Server address
ica.Address = " 192.168.13.32″ ;//" 192.168.12.42″ ;
// Not Password field exposed (for security)
// but can specify it by using the ICA File " password" property
ica.Username = " user" ;
ica.Domain = " xyzcloud.com" ;
ica.SetProp(" Password" , " pswd" );
// Lets have a " pretty" session
ica.DesiredColor = ICAColorDepth.Color24Bit;
// Reseach the output mode you want, depending on what your trying
// to attempt to automate. The " Client Simulation APIs" are only available under certain modes
// (i.e. things like sending keys to the session, enumerating windows, etc.)
ica.OutputMode = OutputMode.OutputModeNormal;
// Height and Width
ica.DesiredHRes = 1024;
ica.DesiredVRes = 786;
int err = ica.GetLastClientError();
// Launch/Connect to the session
ica.Connect();
err = ica.GetLastClientError();
err = ica.GetLastError();
Console.WriteLine(" \nPress any key to log off" );
Console.Read();
// Logoff our session
Console.WriteLine(" Logging off Session" );
ica.Logoff();
Removed the opening and closing brace from the code snippet for correct formatting
Aug 20, 2012
Vipin Borkar says:
One of our partner is having following issues while working with ICA Client Obje...One of our partner is having following issues while working with ICA Client Object API:
Issue I:
========
Whenever we call ICA.EnumerateApplications(), it always returns a zero. Same with ICA.enumerateServers(). But when we launch a published application via setting ICA.InitialProgram we have no problems in launching. Anything that we are missing here?
Issue II:
=========
GetLastError() returns 99. ICO_ERROR_NAME_ENUMERATION 2.2 "Error with name enumeration support"
GetLastClientError() returns 1034. CLIENT_ERROR_IO_ERROR 2.1 "Communication I/O Error"