Skip to content

Shell Mode with Multiple Virtual Apps in Single Session (HyWorks v3.4-SP1-HF6+)

The traditional shell mode (with only one virtual app in one remote session) has its challenges, e.g., multiple sessions of a single user on a single server, some level of performance overhead, peripheral/clipboard redirection in multiple sessions, user profile issues, etc.

To overcome these challenges for end-users, the new delivery mechanism of shell mode with multiple virtual apps is integrated with the latest HyWorks releases.

All the details of this delivery mode will be provided in this section:

Supported Versions, Platforms, and Endpoints

  • Platform Support: Currently this mode of delivery is supported with Windows Session Host Servers only.

  • Supported Endpoints: This mode is currently supported with Windows desktop clients only.

    • Windows Client: v3.2.8415.328438 or later

      Note

      Incompatible clients (Linux, HyLite, etc.) will show an error for new shell mode virtual app launch. However the app will get launched inside of an already running shell app session.

  • Session Host Server: v3.4.1.109 or later will support the delivery of virtual apps in this mode.

  • HyWorks Controller: v3.4-SP1-HF6 or later.

Configure to Use New Shell Mode

To configure virtual application delivery in new shell mode, the following configurations have to be done:

  1. Enable the new launch mode on the session teams page.

    1. From the HyWorks Controller Management Console, navigate to VDI > Session Servers > Server Teams.

    2. In Add/ Edit an existing team:

      1. Navigate to the Load balancing tab.

      2. Select option Launch options for apps in shell mode as Launch in Existing Remote Desktop Session to use new shell mode.

  2. Publish application(s) to be served from this team.

    • Make sure the associated connection profile has the launch mode as shell. Detailed instructions can be found here.
  3. Applications are configured to use a connection profile with Shell mode.

Workflow of New Shell Mode

Let us try to understand virtual app delivery in new shell mode using the following example:

Configurations:

  • Connection Profile with Shell mode.

  • App11, App12, and App13 are published from server-team1 with the launch option as "Launch in existing remote desktop session".

    • Server-team1 has more than one session server.
  • App21 and App22 are published from server-team2 with the launch option as "Launch in existing remote desktop session".

    • Server-team2 has more than one session server.

Flow:

  1. User first accesses App11.

  2. App request comes to controller.

    • The controller checks the configurations (Shell mode, launch in existing shell) and also if any existing session or the first app session.
  3. The controller responds to client requests with possible remote connection settings and updates the session host about the new app session coming.

  4. Client launches App11 - It gets launched in shell mode in a new remote session from one of the session servers of server-team1.

    • Connection establishes, session host agent validates the information and informs back to controller for established connection.
  5. User accesses App12 or App12.

  6. App request comes to Controller.

    • The Controller checks the configurations (Shell mode, launch in existing shell) and also if any existing session or the first app session.
  7. The controller responds to the client request with a response suggesting, "The virtual app will be launched inside the existing remote session, the client should not attempt to launch remote session."

    • The controller sends a virtual app launch confirmation to the session host agent, and the virtual app is launched by the agent in an already-running session.
  8. The client (If compatible) will accept the response and will not perform anything.

  9. The same flow will be used until the client launches an app, which does not belong to this session-team1.

    1. Client accesses App21.

    2. App request comes to controller.

      • The controller checks the configurations (Shell mode, launch in existing shell) and also if any existing session or the first app session.
    3. The controller responds to the client requests with possible remote connection settings and updates the session host about the new app session coming.

    4. Client launches App21 - It gets launched in shell mode in a new remote session from one of the session servers of server-team2.

    5. Connection establishes, session host agent validates the information and informs back to controller for established connection.

User Experience

Taskbar in Shell Mode

In the new shell mode with multiple virtual apps, the session will have a custom taskbar, which can be used to minimize and restore launched virtual application instances.

Important Points of New Shell Delivery Mode

While working on the new shell mode with multiple virtual, the points mentioned here should be considered.