Citrix Application Hosted Control Process

The Citrix Application Hosted Control uses the following process to launch the executable file:

  1. (Client side) The CitrixApplicationHostedControl starts, and then it launches the configured Citrix-published application by using the configured ICAFile (specified in the initString).
  2. (Server side) The Microsoft.Uii.Csr.CitrixIntegration executable file starts and requests the UII application initString from the client.
  3. (Server side) If the application initString request times out (RecvTimeoutInMilliseconds), the Citrix Server component concludes that the Citrix-published application instance is not a UII hosted application, and it terminates.
  4. (Server side) The Citrix Server component uses information provided by the initString to acquire the process of the Citrix-published application. That is, it attempts to identify which process contains the launched Citrix-published application. If it cannot identify the process, the Citrix Server component continues to run and sends a message to the client that can be viewed if tracing has been turned on. The process skips the following step (step 5) and goes to step 6.
  5. (Server side) After the Citrix Server component acquires the process, it identifies the designated top window of the application. The configuration commonly used for external applications is referenced by the Citrix Server component. It can be used to select a non-default top window. If it cannot find the top window, the Citrix Server component continues to run and sends a message to the client that can be viewed if tracing is turned on.
  6. (Server side) An instance of the configured application adapter (which is specified in the received initString) is created. The found process and top window are provided to the adapter at this point. If the process is not found, the value is null. If the process is found but the top window is not found, the value is 0. If an instance of the adapter cannot be created, the Citrix Server component continues to run and sends a message to the client that can be viewed if tracing has been turned on. At this point, all adapter operations are routed between client and server. If the process and/or the top window are not found, the adapter has a value of null for the process and 0 for the top-window handle.

When you close the Citrix-published application, and the session closes in the Interactive Agent Desktop, the server component is also terminated.