Ever have trouble deploying Citrix Receiver to users? Unlike most of Citrix technologies, Citrix Receiver resides on client devices rather than centralized servers that are only accessible to administrators.  I’ve posted this blog article as a step-by-step guide for administrators who want to customize and deploy Citrix Receiver to client devices with little user interaction.

Below is a high-level overview of the steps used in this blog to configure a custom Receiver installation package:

  1. Customize Receiver.  This section describes how to configure Receiver with specific settings, including settings from ADM Templates.
  2. Deploy Receiver.  This section describes how to use Smart Install Maker to create a custom Receiver application.  This section also shows how to deploy Receiver through StoreFront and Web Interface.

Note:  For the purposes of this blog, the installation files will be saved to C:\Receiver on a Windows operating system.  Also, Receiver can be uninstalled manually; however, manual uninstallations of Receiver may leave some legacy registry keys on a user’s computer.  There is a publicly available utility, the Receiver Clean-Up Utility, which removes legacy registry keys.  Uninstall any legacy version of Receiver prior to installing a customized version of Receiver on a user’s device.

1        Customize Receiver

As many versions of Citrix Receiver exist, an administrator needs to first determine which version of Receiver to deploy and what features to deploy.  The Citrix eDocs provides information on Receiver versions and CTX135933 provides methods of deploying Citrix Receiver.

1.1         Download Receiver

Step

Description

Download Receiver.

From a Windows operating system, download the appropriate Receiver version.

Save Receiver.

Save Receiver to C:\Receiver and rename the file to CitrixReceiver.

1.2        Customize Receiver

Step

Description

Determine Receiver settings.

Determine requirements for Receiver.

Create batch file with Receiver settings.

Create a batch file with Receiver installation command line parameters.  Save file to C:\Receiver and name file as Steps.bat.  Below is an example batch file command:

 CitrixReceiver.exe /silent /includeSSON ENABLEPRELAUNCH=true

Note:  Some features of Receiver can be deployed through command line parameters when installing Receiver.  However, other features cannot be deployed through command line parameters and instead require an ADM Template.  If a setting cannot be configured through command line parameters, proceed to step 1.3.  Otherwise, continue to step 1.4.

1.3        Configure ADM Template Settings

Step

Description

Import ADM Template.

Import ADM Template to Group Policy and configure settings.

Note:  An example of how to import an ADM Template can be found in CTX113004.

Determine registry changes.

After confirming that the policies from the ADM Template work on a test PC, open the test PC’s registry.  The ADM Template policies should reside in HKEY_LOCAL_MACHINE\SOFTWARE\Policies\Citrix\ICA Client.  Export the key to C:\Receiver.  For example, a registry key for a single sign-on change would be renamed to sso.reg.

1.4        Edit Steps.bat

Step

Description

Confirm files in C:\Receiver.

Navigate to C:\Receiver and confirm the files exist from sections 1.2 and 1.3.  If using the exact steps from this blog, the following files would exist:

  • CitrixReceiver.exe
  • sso.reg
  • Steps.bat

Note:  The administrator saves the files to C:\Receiver.  However, the Receiver script will push files to a different drive on the client devices.  This blog will assume that the Receiver script pushes files to C:\temp.

Add files to Steps.bat.

In addition to installing Receiver, Steps.bat will import registry settings.  Update Steps.bat to include the other files in C:\Receiver to accomplish these tasks.  Below is an example:

ECHO.
ECHO Importing New Registry Settings…
cmd /c reg import sso.reg

ECHO.
ECHO Installing Citrix Receiver…
C:\temp\CitrixReceiver.exe /silent /includeSSON ENABLEPRELAUNCH=true

Save Steps.bat.

Save Steps.bat.

2       Deploy Receiver

Deploying a batch file with the steps to correctly install Receiver requires a custom application wrapping tool.  This blog uses Smart Install Maker to create a custom application that runs the Steps.bat file and downloads the files contained in C:\Receiver to the user’s C:\temp drive.  The custom application can be deployed automatically through StoreFront or Web Interface.

2.1        Create Custom Receiver Application

Step

Description

Download Smart Install Maker.

Download and install Smart Install Maker.  Then launch Smart Install Maker.

Update Installer tab.

Under the Installer tab, select the General tab, change the text under Save as: to the location, and name, of the custom executable.  In this example, the custom executable will be named Custom.exe and the file will be saved in C:\Receiver.

Note:  These settings can be customized by the administrator to include custom company settings such as company name, company Website, and installer name. The Save as: option determines where the final executable will be saved; in this case, C:/Receiver was selected as the path and Custom.exe as the executable name.

Update Files tab.

Under the Files tab, click  on the bottom right of the page.  After the Add Item window appears, add files to the Source file.

Add files. Add all of the files from C:\Receiver.
Change Destination directory. Change the text destination under Destination directory: to C:\temp.  Then uncheck the Uninstall checkbox and select OK.Note: This process will copy the files down to the user’s C:/Temp directory. The directory location can be customized by the administrator.
Update Dialogs tab. Under the Dialogs tab, select the Silent installation checkbox and enter C:\temp for the Destination path.Note:  This option will remove message prompts from being shown during the installation so that the final executable can be deployed without user intervention.
Update Commands tab. Under the Commands tab, add the Steps.bat file.  Select After unpacking under Run schedule: and select the Wait until the application finishes checkbox.  Then select OK. Once the files have been copied down to the directory specified previously, the custom installer will launch the Steps.bat file in order to process the custom Receiver installation created in section 1.4.
Update the Uninstaller tab. Under the Uninstaller tab, select the General tab.  Unselect the Allow the product to be uninstalled checkbox.
Note:  Allowing the product to be uninstalledwill create an uninstaller option, which will be available via the Add/Remove Programs menu within the user’s device for ease of uninstallation.
Build custom executable. Under the Project tab, select Build installer to create the custom executable as an exe file.
View custom executable. The custom executable is available in C:\Receiver, as specified at the beginning of this section.
Test custom executable. From a test PC, run Custom.exeCustom.exe will first download Receiver, and the other files, to the user’s C:\temp drive and then run the Steps.bat script.

2.2        Deploy Custom Receiver through StoreFront

Note: Some of the changes in section 2.2 cannot be reverted.  For additional details, please visit Citrix eDocs: Make Citrix Receiver installation files available on the server.

Step

Description

Copy Receiver to StoreFront.

On the StoreFront server, navigate to C:\Program Files\Citrix\Receiver StoreFront\Receiver Clients.  Create a folder named Windows, then copy the custom Receiver file (i.e. Custom.exe) to the Windows folder.

Note:  If using Web Interface, skip to section 2.3.

Run PowerShell script.

Launch PowerShell, type & “C:\Program Files\Citrix\Receiver StoreFront\Scripts\UpdateWindowsReceiverLocation.ps1” –ClientLocation “Windows\Custom.exe” and press Enter.

Note:  PowerShell may not allow scripts to run on the StoreFront server.  To allow scripts to run in PowerShell, run Set-ExecutionPolicy unrestricted.

Edit web.config file.

Under C:\inetput\wwwroot\Citrix\storenameWeb, edit web.config.  Locate upgradeAtLogin=“false” and change to upgradeAtLogin= “true” before saving the file.

2.3        Deploy Custom Receiver through Web Interface

Step

Description

Copy Receiver to Web Interface.

On the Web Interface server, navigate to %ProgramFiles%\Citrix\Web Interface\5.4.0\Clients.  Create a folder named Windows, and inside the Windows folder, create another folder named Receiver.  Then copy the custom Receiver file (i.e. Custom.exe) to the Receiver folder.

Set folder permissions.

On the Windows folder, Receiver folder, and Custom.exe, add the following permissions:

Administrators – Full Control

Authenticated Users – Read & Execute, Read

NETWORK SERVICE – Read & Execute, Read

Select Client Deployment.

From the Web Interface Management Console, right-click on the Web Interface site and select Client Deployment.

Enable Client Detection.

Under General, select Client Detection.  Select the Perform client detection at logon and Offer upgrades for clients checkboxes.  Then select OK.

Edit WebInterface.conf file.

Under C:\inetput\wwwroot\Citrix\sitename\Conf, edit WebInterface.conf.  Locate #ClientICAWin32=Filename:CitrixOnlinePluginWeb.exe…and change to ClientICAWin32=Filename:Custom.exe… before saving the file.

Additionally, I would like to thank the following Citrix Consultants for their contributions: Pablo Legorreta and Eric Jurasinski.

Thanks,

Steven Krueger

Citrix Consulting