Introduction
A Citrix Independent Computing Architecture (ICA) virtual channel is a bi-directional error-free connection for the exchange of generalized packet data between a Citrix server and an ICA 3.0-compliant client. Developers can use virtual channels to add functionality to Citrix ICA clients beyond that which is currently implemented. Possible uses for virtual channels include support for administrative functions, new data streams (audio and video), and new devices (scanners, card readers, and joysticks), among other things.
The Citrix Virtual Channel Software Development Kit (VCSDK) provides support for writing both server-side applications and client-side drivers to support additional virtual channels using the Citrix ICA protocol. The server-side virtual channel applications run on Citrix WinFrame and MetaFrame servers. This SDK provides support for writing new virtual channels for the Citrix Win32, Win16, Windows CE, and 32-bit DOS ICA clients. See the accompanying documentation for detailed information on the client versions supported. If you are interested in writing virtual drivers for other Citrix ICA client platforms, contact Citrix Systems, Inc.
Important: The Virtual Channel SDK requires the Citrix Server SDK to write the server side of the virtual channel.
The Citrix Virtual Channel SDK provides the following:
- A description of the architecture of the ICA protocol as it relates to virtual channels.
- The Citrix Virtual Driver Application Programming Interface (VDAPI) used with the virtual channel functions in the
Citrix Server SDK to create new virtual channels. The virtual channel support provided by VDAPI is designed to make
writing your own virtual channels easier.
- Working source code for several example virtual channels that demonstrate programming techniques.
For more information about this SDK, refer to the documentation that is installed along with the SDK. The documentation is provided as a printable Adobe Acrobat .pdf file. Acrobat is a trademark of Adobe Systems Incorporated and can be downloaded for free at http://www.adobe.com/prodindex/acrobat/readstep.html.
New in This Release
- Support for Windows CE ICA clients on six processor platforms (ARM, MIPS, SH3, SH4, x86, and PowerPC)
- Several new examples
System Requirements
The Virtual Channel SDK can be installed on any Windows NT 4.0 computer. The Citrix Server SDK must also be installed for server side development. The virtual drivers and applications can be built on any platform, but must be run on a Citrix server.
Development Environment
- For server-side development, use Microsoft Visual C++ Version 5.0 or 6.0 (and the Citrix Server SDK).
- For Win32 clients, use Microsoft Visual C++ Version 5.0 or 6.0.
- For Win16 clients, use the 16-bit compiler from Microsoft Visual C++ Version 1.52c. This version of Visual C++ is available from Microsoft as a customer service disk for Visual C++ 5.0 customers.
- For 32-bit DOS clients use the Watcom C/C++ 11.0 compiler. Information about the Watcom compiler is on the Sybase Web site .
When installing the Watcom C/C++ compiler, be sure to select a target of DOS, host NT, and 32-bit support. You do not need
16-bit support, C++ support, the SDK, or MFC.
- For Windows CE clients, use Microsoft Visual C++ Version 6.0, the Windows CE Toolkit for Visual C++ 6.0, and the platform SDK for your target processor.
A clone of Microsoft's Nmake utility is supplied with the Watcom 11.0 compiler in the Binnt subdirectory. You can use Watcom Nmake only for building DOS32 targets.
Note: Although the compiler software packages include C++, only C code is used in this SDK.
This SDK has not been tested with any other compilers or any other combinations.
Server Requirements
One of the following Citrix servers:
- MetaFrame 1.8
- MetaFrame 1.0
- WinFrame 1.8
- WinFrame 1.7 with Service Pack 5B
Client Requirements
One of the following Citrix Clients:
- Win32, Win16, or 32-bit DOS ICA Client version 4.20.715 or later
- Windows CE ICA Client version 4.10 or later
Installing the SDK
1. Set up the compiler environment for each of the target platforms you build.
The makefiles use variables to find the compiler and its files. Normally, installing the compiler will set these variables as environment variables for you or give you a batch file to run that will set the variables; for example, VCVars32.bat. If not, you can set the environment variables yourself, or set the defaults in the \src\examples\build\user.mak makefile. See the accompanying documentation for a chart of the target platform, variables, and default values.
2. If the Citrix Server SDK is not already installed, install it before installing this SDK.
Note: The user must have administrator privileges to install the SDK.
3. Click Start, Run and enter d:\path\vcsdk (where d:\path is the path to vcsdk.exe) OR browse the CD with Explorer and double-click Vcsdk.exe. The installation program starts.
You must complete the following tasks during installation:
- Accept the license agreement
- Specify a destination folder for the Citrix Virtual Channel SDK
- Specify the program folder to contain the Citrix Virtual Channel SDK icons
- Optionally view the Readme.txt file
4. Logout and log on or set the CLNTROOT environment variable to the directory where you installed the SDK; for example, C:\VCSDK21.
5. Edit \src\examples\build\user.mak and set DEFAULT_TARGETS to the list of platforms you want to build.
Uninstalling the Virtual Channel SDK
To uninstall the Virtual Channel SDK:
- From the Citrix Virtual Channel SDK program group, select Remove Virtual Channel SDK and follow the prompts.
or
- Use the Add/Remove Programs utility in the Windows Control Panel to remove the Citrix Virtual Channel SDK.