Product Documentation

Managing Streamed Applications

May 18, 2015

After you create profiles for streaming applications using the Streaming Profiler, you make them available to users by publishing the applications.

The Publish Application wizard in the XenApp console guides you through the process of selecting the streaming options. Configure the application streaming delivery method as you publish the application. Choose delivery options based on the users who will access the applications and their environments.

The profiled applications must be stored on a file share or Web server that is accessible from your XenApp server so you can publish the application, and it must be accessible by your users so they can launch the application.

Streaming Applications to User Devices

If you deliver streamed applications directly to user desktops, users can launch the streamed applications, which run in an isolation environment on their desktops and use local resources to run the applications. This delivery method offers the full set of application streaming options including desktop integration and offline access.

Before publishing an application to be streamed to client desktops, complete the following tasks:
  • Install the offline plug-in locally, where it runs in the background to enable application streaming.
  • Install the latest version of online plug-in locally.
  • To stream to client devices across a network protected by a firewall, configure firewall policies to allow those applications access.

After all of these tasks are complete, publish the application as Streamed to client.

Streaming Applications to a XenApp Server

To simplify application delivery to servers in a server farm, stream applications to a XenApp server and virtualize the applications through an ICA connection to user devices.

For users to stream applications through a Web site using an Internet Explorer or Firefox browser, add the site to the Trusted sites list in Internet Explorer on the user devices.

Before publishing an application that is streamed to server, ensure your Web Interface sites and Citrix XenApp sites are configured to run one of the following application types:
  • Remote applications only, or
  • Dual mode streaming (streamed if possible, otherwise accessed from a server)

For information about managing application types on Web Interface sites, see the Web Interface documentation.

After you ensure all of these tasks are complete, publish the application as Streamed to a server.

Publishing Streamed Applications

To stream applications to user devices, start by reviewing the System Requirements for Application Streaming in the Application Streaming product documentation in the Citrix eDocs Archive.

Before publishing an application for streaming, you must use the Citrix Streaming Profiler, a stand-alone utility, to create a streaming application profile and save the profile on a network file share or Web server (your App Hub). For instructions, search for Creating Application Profiles. In particular, see To create a profile and target, as well as other topics in that section.

After creating the application profile, continue by publishing the application to make it available to users. When you publish an application, you make choices about how to deliver the application and its properties. Use the Publish Application wizard in the Delivery Services Console, the same wizard you use to publish installed applications. To review the general steps in the wizard, see Publishing Resources for Users.

In the wizard, select the delivery options to publish the application for streaming. For guidance, search for To select a streaming delivery method. Continue by locating the application profile stored in your App Hub and finish the wizard.

In addition, refer to other topics about application properties and preferences and how to configure offline access (optional).

Finally, to prepare user devices for streaming, search for Deciding Which Plug-ins to Use for Application Streaming, as well as other topics about the Citrix Plug-ins.
Important: To launch streamed applications, user devices must have sufficient RAM locally.

To select a streaming delivery method

You select the resource type in the XenApp console while running the Publish Application wizard.

Important: For users to stream applications through a Web site using an Internet Explorer or Firefox browser, add the site to the Trusted sites list in Internet Explorer on the user devices.
  1. To open the Publish Application wizard, from the XenApp console, under the XenApp node, expand the farm or server to which you want to publish an application. Select the Applications node, and from the Actions pane, choose Publish application and follow the instructions in the wizard.

    Optionally, to change the delivery method after publishing an application, from the Action menu, select Other Tasks > Change application type and follow the instructions in the wizard.

  2. In the Publish Application wizard, on the Type page, select Application.
  3. Select a delivery method from the Application type list:
    • Accessed from a server. Users launch the application that runs on a XenApp server and uses shared server resources, or launch it from a Web browser using a Web Interface site you create. If you choose this option, you must then enter the location of the executable file for the application and the XenApp server on which it will run. This is the typical application type unless you intend to stream your applications to the client desktop. With this method, users access the applications using the online plug-in or Web plug-in. This method does not support desktop integration or offline access to applications.

      From the Server application type list, select the delivery method:

      • Installed application. Users launch the application installed on a XenApp server.
      • Streamed to server. The application in the profile is streamed from the App Hub to the XenApp server, where the offline plug-in is installed by default. The application displays on the user devices using the online plug-in or Web plug-in; the offline plug-in is not required on the user device. With this method, users access the applications using the online plug-in or Web plug-in. This method does not support desktop integration or offline access to applications.
    • Streamed if possible, otherwise accessed from a server (called dual mode streaming). Grants users access to a profiled application that streams from the file share to their user devices and launches locally from within an isolation environment. Alternatively, user devices that do not support streamed applications (such as when they do not have the offline plug-in installed) instead use an ICA connection to access the application installed on or streamed from a XenApp server.

      From the Server application type list, select the alternative delivery method for clients that do not support streaming to user device:

      • Installed application. Users launch the application installed on a XenApp server.
      • Streamed to server. The application in the profile is streamed from the App Hub to the XenApp server, where the offline plug-in is installed by default. The application displays on the user devices using the online plug-in or Web plug-in; the offline plug-in is not required on the user device. With this method, users access the applications using the online plug-in or Web plug-in. This method does not support desktop integration or offline access to applications.
    • Streamed to client. With this method, you make available the full set of application streaming features. When you stream applications directly to client desktops, some of the application files are cached locally and the application runs locally from within an isolation environment using the resources of the user device.
      • Users must have both the offline plug-in and online plug-in installed locally.
      • With this delivery method, you can configure the application and users for offline access. When this configuration is completed, the entire application is fully cached on the user device. Users can disconnect from the network and continue using the application for the time specified in the offline license.
      • User devices that do not support client-side application virtualization (such as, they use a non-Windows client) or do not have the offline plug-in installed locally cannot launch the application.
      Note: You can also force a delivery method for applications published as "Streamed to client" based on filters. To do this, configure the Load Balancing policy setting (located in the Delivery Services Console) for Streamed App Delivery. The policy setting overrides the selection in the publishing wizard.

To force a delivery method for streamed applications

Use the Load Balancing Policies to apply settings to sessions that are filtered for Web access, specific users, client devices, IP addresses, or server. Use the delivery method policy to override the delivery method of applications published as stream to client.

If you disable the policy setting or do not configure it, the delivery method specified in the Publish Application wizard is used

  1. From the Delivery Services Console, select the farm.
  2. Under the server, select Load Balancing Policies.
  3. From the Actions pane, configure the policy settings for Streamed App Delivery.
  4. Select one of the following options:
    • Allow applications to stream to the client or run on a Terminal Server (default setting).
    • Force applications to stream to the client. User devices always stream the application from the App Hub to the user devices. Users must have the offline plug-in installed and access the application using the online plug-in or a Web Interface site. For example, you might use this setting to prevent the use of server resources. User devices without the offline plug-in and either the online or Web plug-in cannot launch the application.
    • Do not allow applications to stream to the client. Users always launch streamed applications from the server. For example, you might use this option to prevent applications from streaming to specific clients. In addition:
      • If you publish a streaming application with Streamed if possible, otherwise accessed from a server (dual mode streaming), users always launch the application from the server using the alternative method you selected.
      • If you publish an application as Streamed to client (without dual mode), the connection fails.

This table describes the default delivery of each application type and the results of setting the policy. The policy setting overrides the delivery protocol for applications that are published as “streamed to client.”

Application type No policy (default delivery) With policy: Do not allow stream to client With policy: Force stream to client
Streamed to client Citrix offline plug-in streams application to desktop. Connection fails. Connection works.
Accessed from a server:

—Installed application

Citrix online plug-in virtualizes the application installed on XenApp (not streamed). Policy does not apply. Policy does not apply.
—Streamed to server Offline plug-in streams application from file share to XenApp and any online plug-in virtualizes the application from XenApp. Policy does not apply. Policy does not apply.
Streamed if possible; otherwise accessed from a server (dual mode):

—Installed application

Dual mode: Offline plug-in streams application to desktop.

Otherwise, the online plug-in connects to the application installed on server (not streamed).

Online plug-in always connects to application installed on server. Offline plug-in always streams application to desktop.
—Streamed to server Dual mode: Offline plug-in streams application to desktop.

Otherwise, offline plug-in streams application to the server.

Offline plug-in always streams application to the server. Offline plug-in always streams application to desktop.

To provide HTTP or HTTPS delivery method

To stream a profile using the HTTP or HTTPS protocol delivery method, use the following example to configure a virtual directory on the Web server.

These steps assume that you already profiled the application and saved it to a file share using a UNC path.

To stream from an HTTPS address, see the additional steps at the end of this procedure. Note that HTTPS requires additional certificate setup. For assistance, contact your network administrator.

The Basic authentication scheme for HTTP is not allowed by default. To allow Basic authentication, create the following registry key:
  • For 32-bit systems: HKEY_LOCAL_MACHINE\Software\Citrix\Rade\AllowUnsecuredHttpAuth
  • For 64-bit systems: HKEY_LOCAL_MACHINE\Software\Wow6432Node\Citrix\Rade\AllowUnsecuredHttpAuth
  • Type: REG_DWORD
  • Value: 1

In the following example, the XenApp server, Web server, and file server are located on the same physical server. This is not a requirement.

To configure the Web server:
  1. Create a file share, if one does not already exist. For example: Web server name: WebServer Physical location on Web server: c:\webProfiles The share name: webProfiles An administrator must share this folder with the “everyone” group assigned READ access and the “administrators” group assigned WRITE access at both the share level and NTFS level. UNC path: \\WebServer\webProfiles
  2. On the Web site hosting the profile, add the following MIME type information:
    • Extension:*
    • MIME type: application/octet-stream
    • Set "Execute Permissions" to NONE

    You can set this information for the Web site hosting the profiles or for a specific folder in the virtual directory that holds the profiles.

  3. In addition, if the profile includes pre-launch or post-exit scripts, also add the following MIME type information for the file extension of each script, such as .bat or .com. Extension: <file extension>, and MIME type: application/octet-stream
  4. In the directory hosting the profiles:
    1. Open Properties and select the Directory tab.
    2. In the Configuration area, keep one application file extension (it doesn't matter which one you keep) and remove all the rest of the file extensions.
    3. Create a placeholder extension for application mapping; for example, ".testcitrix," which should not occur in the profile.
    4. Copy the settings from the file extension that remains (Step 4b) to the placeholder extension.
    5. Delete the file extension that remained in Step 4b, leaving only the placeholder extension from Step 4c.
  5. Create a virtual Web site that points to the file share using the UNC path. For best results, do not use spaces in the URL. For example: HTTP (or HTTPS) path of virtual directory: http://WebServer.domain.com/webProfiles
  6. Turn on Directory Browsing on the virtual Web site. Now you can test the configuration; continuing the example, browse to http://WebServer.domain.com/webProfiles/myApplication/myApplication.profile. If the Web server is configured correctly, the .profile file opens looking like an xml file (not an error message). For HTTP, you have now completed the configuration of the Web server.
  7. For HTTPS, additional binding configuration of the Web server is required. See the additional steps following this procedure, based on your operating system.
  8. In the Citrix AppCenter, publish the application as Streamed to client, Streamed to server, or Streamed if possible, otherwise accessed from a server and continue in the wizard.
  9. On the Location page, enter the full URL path (starting with HTTP or HTTPS) to the profile (browsing to an HTTP location is not supported at this time). Use a fully qualified domain name, not a relative domain name.
  10. Click in the field titled Application to launch from the Citrix streaming application profile to select the application.
  11. Finish the remaining pages of the wizard. The application is ready to stream to the client device using the HTTP delivery method.

To stream from an HTTPS address from Windows Server 2008 additional configuration is required on the Web server. An appropriate Web Server Certificate must be already installed:

  1. From IIS, edit the Bindings for the Web Site.
  2. In the Site Bindings dialog, click Add.
  3. Under Type, choose https.
  4. For SSL certificate, choose the installed Web Server Certificate.
  5. Using the previous example, browse to https://WebServer/webProfiles on the Web server, which must be a member of the domain and have the root certificate installed.

To stream from an HTTPS address from Windows Server 2003, install a Web Server Certificate from a domain certificate authority:

  1. From IIS, open Properties for the virtual Web site.
  2. Click the Directory Security tab.
  3. Under Server Communications, click Server Certificate.
  4. Complete the Web Server Certificate wizard, and using the previous example, browse to https://WebServer/webProfiles on the Web server, which must be a member of the domain and have the root certificate installed.

Configuring Offline Access

Administrators can configure applications that are published to stream to desktops for offline access. This feature allows users to disconnect from the company network and continue to run their applications in offline mode for a specified length of time. No additional configuration is needed while profiling the application to create application profiles or targets that can be accessed offline.

After you configure the offline application policy settings and configure a streamed application for offline access, the next time the user device connects to XenApp, the offline plug-in downloads the application and caches it on the user device.

Important: Before you configure offline access, refer to System Requirements for Application Streaming for the supported platforms and system prerequisites for user devices.
  • Step 1: Configure policy settings for offline access
  • Step 2: Install the online and offline plug-ins on user devices
  • Step 3: Publish the application for offline access

You can complete these steps in any order, but users cannot run applications in offline mode until all steps are completed.

Step 1: Configure Policy Settings for Offline Applications

Configure these Citrix policy settings for Offline Applications:
  • Offline app users (required). Create a list of users or groups who have offline access permission and add that list both when creating the policy for Offline app users and when publishing the application.

    Users or groups listed in the offline app users policy setting and who are also configured for the application have permission to run offline-enabled applications in online and offline mode. Users who are configured for the application, but who are not added to the policy list can access the application online, but not offline.

    Users or groups on this list use an offline license to launch applications regardless of whether they are connected to the network or disconnected.

  • Offline app license period (required). Specify the number of days applications can work offline before users have to renew the license (21 days by default, but can range from 2 to 365 days).

    For versions 1.0 through 5.1 of the plug-in, the license for each application in the profile is activated when the user launches the application the first time, for online or offline use. Beginning with version 5.2 of the plug-in, when the user launches an application in the profile for the first time, for online or offline use, the offline license is activated for all other applications in the profile, as well. This occurs at the farm level. Thus, the offline license for all applications in the profile expires based on the date of the first application launched the first time, regardless of when the other applications are launched.

    To configure licenses, administrators can use the License Management Console or command-line tools. They must also ensure they have a sufficient number of licenses to support the total number of users with offline access permission. Users who run XenApp hosted applications can also stream applications to user devices without requiring a separate license. For general information, in the topics for Licensing Your Product, see Getting Started with Citrix Licensing.

    When users with offline access log on using the online plug-in, they automatically either check out an offline license or renew a license already checked out. If users stay logged on, licenses are renewed automatically each day. If the license is near its expiration date while a user is running the application in offline mode, a notice appears reminding the user to log on (that is, change to online mode). When the user logs on, the offline license is renewed automatically if a license is available.

    If the license expires and no license is available, the user cannot launch the application offline.

  • Offline app client trust (optional). Use this setting to enable offline application clients that have disconnected to recreate sessions when reconnecting, without authenticating again.
  • Offline app event logging (optional). Use this setting to enable logging of offline application events to the event log on the server.

Step 2: Install the Online and Offline Plug-ins on User Devices

To use the offline access feature, install both the offline and online plug-ins on the user device. The offline plug-in caches each streamed application on the hard drive of the user device. After the application is cached, the user can disconnect from the network or server and continue to run the application in offline mode for the period of time specified in the license.

Step 3: Publish the Application for Offline Access

The offline access feature is available only for applications that you publish as Streamed to client or Streamed if possible, otherwise accessed from a server.

In addition, when publishing an application for offline access, check the application's documentation and Web site to determine whether any special configuration is required on the user device to enable offline access of that application. For example, to stream Microsoft Outlook to the user device for offline access, users must enable the Microsoft Exchange Setting to "Use Cached Exchange Mode."

Configure the application for offline access while publishing the application or later using the application properties:
  • Enable the application for offline access and select the caching preference.
  • Create a list of users or groups who have offline access permission and add that list both when creating the policy for Offline app users and when publishing the application.