FlexApp Click-to-Layer for Published Apps

Summary

ProfileUnity’s FlexApp Technology includes exclusive Click-to-Layer capabilities and Citrix Virtual Apps and Desktops and Microsoft RDSH session isolation for FlexApp application packages. FlexApp’s Click-to-Layer feature allows instant delivery of FlexApp layered applications on-demand upon the application open action by a user. The user clicks on the application’s native icon on the Desktop or in the Start Menu and the application is instantly delivered via FlexApp and is ready for use. The option improves desktop readiness times compared to other layer delivery options because applications are not mounted unless they are in use. Now even dozens of layered applications can be readily available in a user’s Windows environment without needing to actually layer every available application that might not be used during a user’s session.

FlexApp’s Session Isolation feature provides enhanced delivery support providing session-based layering for published applications running on Citrix Virtual Apps, Microsoft RDSH, and Microsoft RemoteApp. Before, all applications published on a server were visible to all connected users whether they need them or not. Now when FlexApp applications are delivered to a user’s published desktop, other users are not automatically exposed to those applications. Every user’s desktop can remain unique, even for users on the same Windows Server environment.

Click-to-Layer in a server environment offers an additional advantage. The first user to request an application to open will experience a slight delay as the FlexApp package is layered into the environment. However, after the application is layered into the server environment, the process does not need to be repeated. Subsequent users will not experience any delays on an application open.

This document explains how to configure FlexApp’s Click-to-Layer feature for published applications.

Updating FlexApp Settings for Click-to-Layer with Published Applications

Before configuring Click-to-Layer with your preferred method of publishing applications, complete the following steps:

  1. Package your application with the FlexApp Packaging Console.
  2. If you have not already done so, click your username in the top right of the screen.
  3. In the drop-down menu that appears, select the Administration option.
  4. Scroll down to the ProfileUnity Tools section.
  5. Click the Download or Deploy Client Tools button.
  6. Enabling Click-to-Layer for published applications requires you to edit FlexApp configuration settings inside the flexapp.zip file that was just copied to the Deployment Path as part of the Client Tools. The default location for flexapp.zip is in the NETLOGON\ProfileUnity folder.
  7. Open and copy out of the flexapp.zip, from within the “CTL” folder, the JitCut.dll.config file.
  8. Edit JitCut.dll.config and change the following setting from True to False:
  9. <setting name="Validate" serializeAs="String">
  10. <value>False</value>
  11. </setting>

  12. Replace JitCut.dll.config in the FlexApp.zip\CTL folder with the modified version for published apps.
  13. If the client software has previously been deployed to the end user machines in your environment, you will need to uninstall the existing client software. If the client software has not been previously deployed to the end user machines in your environment, the client software will be installed through a Group Policy computer startup script from the Deployment Path with the modifications that were made to flexapp.zip for FlexApp Click-To-Layer.

Next, you will continue the configuration process based on your choice of application-publishing brokers.

Citrix Virtual Apps

  1. Log in to Citrix Studio and navigate to Applications.
  2. In the Actions field on the right side of the screen, click the Add Applications button.
  3. Proceed through wizard until you get to the Applications screen.
  4. Click the Add button, then select the Manually option from the list that appears.
  5. In the Path to the executable file field, enter the full client-side path to the modified Click-to-Layer version of the JitCut.exe file:
  6. C:\Program Files\ProfileUnity\FlexApp\CTL\JitCut.exe

  7. In the Command line argument field, specify the path to the package xml, which is stored alongside the package that the FlexApp Packaging Console creates. Enter the path using the following format:
  8. "\\MyServer\Share\Chrome_20170619\Chrome_20170619.package.xml" 0

  9. The number at the end corresponds to the package’s shortcut index, 0 being the first <Link> in the XML file’s <Links> section. Change this value to launch different shortcuts or applications within this package.
  10. Fill in the Application name field.
  11. Click OK.
  12. The Add Applications wizard reappears.
  13. Complete the Add Application wizard and verify the application has been added successfully.
  14. In the Citrix Studio screen, right-click the Applications folder and go to Properties.
  15. On the Application Settings screen that appears, click the Delivery button in the left column.
  16. In the Application icon field, click the Change button.
  17. On the Select Icon screen that opens, select the Choose an icon from a file on a representative machine radio button.
  18. Select the .ico file located in the package path.
  19. Press OK to save your changes and verify that the new icon appears.
  20. The application can now be assigned and launched from the Citrix StoreFront screen.

Citrix Web Studio

  1. Log in to Web Studio.
  2. In the left column, navigate to Applications.
  3. Select Add Applications.
  4. Click Next.
  5. Select the desired Delivery Group and click Next.
  6. Input the following in the Path to executable file section:
  7. C:\Program FIles\ProfileUnity\FlexApp\CTL\JitCut.exe.

  8. Under Command-line arguments, point to the XML file of the package being deployed and list the respective shortcut index to launch using the example below:
  9. "\\MyServer\Share\Chrome_20170619\Chrome_20170619.package.xml" 0

  10. The number at the end corresponds to the package’s shortcut index, 0 being the first <Link> in the XML file’s <Links> section. Change this value to launch different shortcuts or applications within this package.

  11. Click Done.
  12. Select the application and click Properties....
  13. In the left column, select Delivery.
  14. Click Change... under Application Icon.
  15. Select the desired ico, exe, or dll file to use as the icon.
  16. Click OK.

VMware Horizon RDSH

  1. Log in to the VMware Horizon Admin Console.
  2. In the left column, navigate to Inventory > Applications.
  3. On the Application Pools screen, click the Add button to add a new application.
  4. On the Add Application Pools screen, select the Add application pool manually radio button.
  5. Enter an ID, Display name, Version, and Publisher for the pool.
  6. In the Path field, enter the full client-side path to the modified Click-to-Layer version of JitCut.exe:
  7. C:\Program Files\ProfileUnity\FlexApp\CTL\JitCut.exe

  8. In the Parameters field, specify the path to the package .xml, which is stored alongside the package that the FlexApp Packaging Console creates. Enter the path in the following format:
  9. "\\MyServer\Share\Chrome_20170619\Chrome_20170619.package.xml" 0

  10. The number at the end corresponds to the package’s shortcut index, 0 being the first <Link> in the XML file’s <Links> section. Change this value to launch different shortcuts or applications within this package.
  11. Click the Finish button.

Assiging and Launching the VMware Horizon Client

The application can now be assigned and launched from the VMware Horizon Client. The following provides the steps needed for VMware Horizon 7.13 and VMware Horizon 7.1.

VMware Horizon 7.13

If you are starting with VMware Horizon 7.13, VMware has added support for changing the default icons for published applications via Horizon console using the following steps:

  1. In Horizon Console, select Inventory > Applications.
  2. Select an application pool or multiple application pools and click Application Icon > Associate Application Icon.
  3. To upload an icon, click Upload Icon File and browse for an icon in the .PNG format. The icon file must be between 16x16 pixels and 256x256 pixels
  4. Click OK.

VMware Horizon 7.1

If you are starting with VMware Horizon 7.1, VMware has added support for changing the default icons for published applications via PowerCLI. Both VMware Horizon 7.1 and PowerCLI 6.5 R2 are required. After installation, the icon can be changed by opening a PowerShell cmd prompt and performing the following steps:

  1. Load the required PowerCLI modules:
    • Get-Module - ListAvailable VMware.VimAutomation.HorizonView | Import-Module
    • Get-Module - ListAvailable VMware.Hv.Helper | Import-Module

  2. Connect to the VMware Horizon connection server:
  3. Connect-HVServer -Server your.connectionserver.com

  4. Set the Application icon to an image file (.ico, .png, .jpg, etc.):
  5. Set-HVApplicationIcon -ApplicationName Chrome -IconPath C:\MyIcons\chrome.ico

Azure Virtual Desktop RemoteApp

  1. Log in to Azure Portal.
  2. In the search box, type Application Groups and select the service listed.
  3. Under the Name column, click the applicable Application Group.
  4. On the Overview page, select Manage next to the Applications section.
  5. Click Add.
  6. Next to Application source, choose File Path from the drop-down menu.
  7. In the Application path field, input the path below:
  8. "C:\Program Files\ProfileUnity\FlexApp\CTL\JitCut.exe"

  9. Enter a unique Application ID that does not contain & + / \.
  10. Provide a Display Name that will be visible to users.
  11. Select Yes for Require command line.
  12. Enter the path the FlexApp XML to be published, followed by the index to be launched.
  13. "\\MyServer\Share\Chrome_20170619\Chrome_20170619.package.xml" 0

  14. The number at the end corresponds to the package’s shortcut index, 0 being the first <Link> in the XML file’s <Links> section. Change this value to launch different shortcuts or applications within this package.

  15. Click Next.
  16. Under Icon path, provide the local host path to the desired ico, exe, or dll file.
  17. For Icon index, provide the respective number of the contained index from the file.
  18. Click Review + Add and confirm all information is correct.
  19. Click Add.

Microsoft RemoteApp

  1. Log in to the Microsoft RemoteApp server.
  2. In the left column, go to Collections > QuickSessionCollection.
  3. In the RemoteApp Programs field, click the Tasks drop-down menu and select Publish RemoteApp Programs.
  4. The Publish RemoteApp Programs wizard starts. Click the Add button to add an application manually.
  5. Navigate to and select the modified Click-to-Layer JitCut executable:
  6. C:\Program Files\ProfileUnity\FlexApp\CTL\JitCut.exe

  7. Complete the Publish RemoteApp Programs wizard.
  8. In the RemoteApp Programs field again, right-click the new JitCut application and select Edit Properties.
  9. On the General screen for the JitCut application, change the RemoteApp program name field to the name of the application intended to be published.
  10. On the Parameters screen, specify the path to the package xml, which is stored alongside the package that the FlexApp Packaging Console creates. Use the following format:
  11. "\\MyServer\Share\Chrome_20170619\Chrome_20170619.package.xml" 0

  12. The number at the end corresponds to the package’s shortcut index, 0 being the first <Link> in the XML file’s <Links> section. Change this value to launch different shortcuts or applications within this package.
  13. Click OK to complete the application configuration process.
  14. The application can now be assigned and launched from the RemoteApp portal.

PowerShell can be used to customize the icon seen in the RemoteApp portal. To do so, launch a PowerShell prompt on the RemoteApp server and:

  1. Type the following to replace the application icon with a new one from a .ico, .exe, or .dll file:
  2. Get-RDRemoteApp -Alias "JitCut" | Set-RDRemoteApp -IconPath “C:\MyIcons\chrome.ico"

  3. Log out of the RemoteApp portal and then log back in for changes to take effect.