ICA File Documentation


Summary

An .ica file is a Citrix Independent Computing Architecture configuration file: a small INI-style text file that tells the Citrix client which remote application or desktop to launch and how to connect. It is not the application itself. Its MIME type is application/x-ica, and the Citrix Workspace app (formerly Citrix Receiver) reads it to open a published session. A browser that downloads launch.ica instead of starting the session means the Workspace app is missing or unassociated.

Technical details

FeatureValue
Full nameCitrix Independent Computing Architecture file
File extension.ica
MIME typeapplication/x-ica
Format typePlain-text INI-style configuration (launch parameters)
DeveloperCitrix Systems (now Cloud Software Group)
Introduced1990s, Citrix WinFrame / ICA protocol era
Underlying protocolICA / HDX remote-display protocol
Open standardNo; proprietary to Citrix
EncodingASCII / ANSI text, CRLF line endings
Structure[Section] headers with Key=Value lines
Typical first section[WFClient] or [Encoding]
Reader applicationCitrix Workspace app (renamed from Citrix Receiver, August 2018)
ContentsServer address, published resource, display / audio / encryption settings, launch ticket
Contains user dataNo; connection parameters plus a short-lived credential only
LifetimeSingle-use; discarded once the session connects
Related extensions.cr, .rdp
Specification URLdocs.citrix.com/en-us/citrix-workspace-app.html
Structure at a glance

An .ica is a plain-text INI file, not a binary format, so it has no reliable magic number. It is a set of [Section] blocks holding Key=Value lines. The first section is usually [WFClient] (client and protocol settings) or [Encoding]. Identify it by readable keys such as Address=, InitialProgram= and ICAKeyboardLayout= rather than by fixed bytes.

What is an ICA file?

ICA stands for Independent Computing Architecture, the remote-display protocol Citrix has used since its WinFrame products in the 1990s. An .ica file is not the remote application and holds no user data. It is a short INI-style text file that carries everything the local Citrix client needs to open exactly one remote session: the server or gateway address, the name of the published application or desktop, display and audio preferences, encryption settings, and a short-lived launch ticket. Once the session connects, the file has done its job and can be deleted.

You almost always meet an .ica in a corporate setting. A company publishes applications or virtual desktops through Citrix, and when you click a resource on the Citrix StoreFront or Workspace web page, the browser hands a generated launch.ica to the local client. The client that consumes it is the Citrix Workspace app, which was called Citrix Receiver until August 2018 when Citrix rebranded it (the two are fully compatible, so old documentation still says “Receiver”). The rest of this page describes what is actually inside the file and how the client reads it.

The INI section model: WFClient, ApplicationServers and Encoding

Structurally an .ica is an INI file: a sequence of [Section] headers, each followed by Key=Value lines, in ASCII text with CRLF line endings. Three sections do most of the work.

[WFClient]
Version=2
ClientName=WI_a8Fk29xLm

[ApplicationServers]
Notepad=

[Notepad]
Address=;40;STAcccc;...   ; connection target (often via a gateway ticket)
InitialProgram=#Notepad
TransportDriver=TCP/IP
WinStationDriver=ICA 3.0
DesiredHRES=1920
DesiredVRES=1080
DesiredColor=8

[Encoding]
InputEncoding=UTF8

The [WFClient] section holds client-wide settings: the file-format Version, a generated ClientName, and global protocol options. The [ApplicationServers] section is an index; each key in it names another section that describes one launchable resource. In the example, Notepad= points to a [Notepad] section that specifies how to reach and start that published app. The [Encoding] section fixes the character encoding used to interpret the rest of the file. Because the format is line-oriented text, you can open any .ica in Notepad to read exactly where it will connect, which is the fastest way to diagnose a broken launch.

The connection keys: Address, InitialProgram and transport

The resource section is where the real routing lives. Address= is the connection target. On a direct connection it is a hostname or IP and port, but through a Citrix Gateway it is usually a longer token that encodes a Secure Ticket Authority (STA) reference rather than a raw address, so the client reaches the back end without ever seeing its internal name. InitialProgram= names the published resource to start, conventionally prefixed with # for a published application (for example #Notepad) or left describing a full desktop. TransportDriver= and WinStationDriver= select the transport (TCP/IP) and the ICA protocol driver version. Display keys such as DesiredHRES, DesiredVRES and DesiredColor request an initial resolution and colour depth, and further keys control audio, clipboard mapping, drive mapping and printer redirection. None of this is the application; it is instructions for the client about a session that runs on Citrix servers.

The launch ticket and why the file is single-use

The security-critical part of an .ica is the launch ticket embedded in the connection parameters. Rather than putting a password in the file, StoreFront issues a one-time, short-lived ticket (often through the Secure Ticket Authority) that authorises this single session. That design has two consequences. First, the ticket is a live credential while it is valid, so an .ica should not be shared or posted publicly; anyone who replays it in time could open the session. Second, tickets expire quickly, which is why a saved .ica stops working after a few minutes and clicking the resource again generates a fresh file. If you see “the ICA file has expired”, the ticket, not the app, has timed out.

How the browser and Workspace app hand off the file

The classic support problem is “the browser downloads launch.ica instead of starting the session.” The handoff depends on the browser recognising the application/x-ica content type and passing the file to the registered handler, the Citrix Workspace app. When the Workspace app is not installed, or the .ica file type is not associated with it, or the browser is set to save rather than open the type, the file lands in the Downloads folder inert. The fix is to install or repair Citrix Workspace app and associate .ica with it, or use the “Detect Workspace” prompt on the StoreFront page. Where an administrator has enabled it, an HTML5 “Workspace for web” client can run the session inside the browser without a local .ica handoff at all. On Linux the file is opened by the wfica handler that ships with Workspace app for Linux.

ICA versus RDP as launch files

An .ica is often confused with a Microsoft RDP file because both are small text connection descriptors for a remote session. They target different protocols and back ends: .ica drives Citrix’s ICA/HDX protocol against a Citrix server, while .rdp drives Microsoft’s Remote Desktop Protocol against a Windows host. You cannot convert one into the other, because the servers speak different protocols; if you need RDP access, an administrator must publish an RDP endpoint. Both files share the property that they carry connection settings and, in the RDP case optionally credentials, but never the remote application code itself.

FAQ

Why does my browser download the .ica instead of launching the session?

The browser could not hand the application/x-ica file to a handler. Citrix Workspace app is not installed, the .ica file type is not associated with it, or the browser is set to save the type. Install or repair Workspace app and associate .ica with it, or use “Detect Workspace” on the StoreFront page.

Why does a saved .ica stop working after a few minutes?

It contains a one-time launch ticket that StoreFront issues with a short lifetime for security. Once the ticket expires the file cannot open a session. Return to the portal and click the resource again to generate a fresh .ica.

References