Views: 9.1k  |  Created: 11/21/2008

Average Rating: 4
Citrix ICA Client has 1 inventory records, 4 Questions, 1 Blogs and 5 links. Please help add to this by sharing more!

Deployment Tips (12)

Most Common Setup Type
Not Determined
Average Package Difficulty Rating
Rated 4 / 5 (Somewhat Difficult) based on 1 ratings
Most Commonly Reported Deployment Method
Repackaged (to a setup.msi)
or cancel
12
Command Line
Download the "XenApp Plugin for Hosted Apps" (which is the new name for the ICA Client) from
http://www.citrix.com/site/SS/downloads/index.asp

The XenAppHosted.msi can be customized with the Client Packager by using the following command line:
msiexec.exe /a path/XenAppHosted.msi

Unlike many custom tuners, this doesn't create an .mst file, it actually modifies the .msi itself.
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
9
Note
I faced the following challenges while deploying this client:

1. I tried to avoid using the Client Packager because I don't like modifying shipping .msi files and losing track of the changes. But I found that every .mst file I tried to create was ignored at some level, resulting in the wrong features being installed. I tried AdminStudio Tuner and InstEd with similar results.

2. This version doesn't install cleanly over previous versions if the user is not an Administrator, even with elevated rights delivered by ZEN.

3. The MSI that results from the Client Repackager does not install correctly without Administrative rights, even with elevated rights delivered by ZEN. It appears to work, but all of the program files actually go to %userprofile%\Local Settings\Application Data instead of c:\program files.

I was able to overcome all of these challenges with the following steps:

1. Use the Client Repackager to build an MSI that met my installation needs.

2. Edit the MSI and change the ALLUSERS Property value from 2 to 1. This overcomes the rights problem that sends the files to the wrong location.

3. Manually uninstall previous versions with a script that looks like this:

@echo Uninstalling previous versions of the Citrix client. Please wait...
@echo off
MSIEXEC /x {4E21223F-8D6C-446E-9CD3-587D206A8400} /qn REBOOT=ReallySuppress
MSIEXEC /x {76E4A642-BC3E-438A-8450-0C15A36B5B18l} /qn REBOOT=ReallySuppress
MSIEXEC /x {7A1FB67F-A340-472A-97C3-A6AFFE078AAE} /qn REBOOT=ReallySuppress
MSIEXEC /x {94F321B9-45B0-4125-970D-DE3D98CBCA1C} /qn REBOOT=ReallySuppress
MSIEXEC /x {B2AE44CB-2AAB-4C08-A54B-D264BD604DA8} /qn REBOOT=ReallySuppress
MSIEXEC /x {D989BCC0-757C-4FB6-893C-512DF4382656} /qn REBOOT=ReallySuppress
MSIEXEC /x {DF1D5FEC-D67C-43C8-9230-41F5DF350196} /qn REBOOT=ReallySuppress
MSIEXEC /x {E92B7A19-5FD5-4AEE-9FEF-7AD5DD3A675E} /qn REBOOT=ReallySuppress
deltree /Y "c:\program files\citrix\ica client"

I included all of the ProductCodes that I could gather, and I think I've caught v7 through v10. If I've missed any, please add them to these notes.
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
8
Command Line
Citrix has changed the install entirely for version 11.2. The install is now a large exe wrapped around several MSI and other files. To install I found the following command line worked:

"CitrixOnlinePluginFull.exe" /silent SERVER_LOCATION="[server]/config.xml

But the wierdest part is the uninstall:

C:\Documents and Settings\All Users\Application Data\Citrix\Citrix online plug-in\TrolleyExpress.exe /uninstall /cleanup
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
3
Note
Here is the vbscript I am using to detect and remove any Citrix Software that is installed. I have noticed that it will not detect the XenApp Plugin, but I have tested it to remove version 7 through 11 of the Program Neighborhood.

Caution: If you have software from Citrix that you don';t want removed, don't run this vbs as it will enumerate and remove all installed packages that have Metaframe or Citrix in the title.

Option Explicit
Dim objReg, strcomputer, strKey, strEntry1a, strEntry5, objShell, arrSubkeys, strSubkey
Dim strValue1, intRet1, V, W, X, intValue5, arrCitrix, strEntry1b, arrMSIExec

Const HKLM = &H80000002
strComputer = "."
strKey = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
strEntry1a = "DisplayName"
strEntry5 = "UninstallString"

Set objShell=CreateObject("WScript.Shell")
Set objReg = GetObject("winmgmts://" & strComputer & "/root/default:StdRegProv")
objReg.EnumKey HKLM, strKey, arrSubkeys
WScript.Echo "Installed Applications" & VbCrLf
For Each strSubkey In arrSubkeys
intRet1 = objReg.GetStringValue(HKLM, strKey & strSubkey, strEntry1a, strValue1)
If intRet1 <> 0 Then
objReg.GetStringValue HKLM, strKey & strSubkey, strEntry1b, strValue1
End If
If strValue1 <> "" Then
V=InStr(1,UCASE(strValue1),"CITRIX")
W=InStr(1,UCASE(strValue1),"METAFRAME")
X = V+W
If X<>0 Then
objReg.GetStringValue HKLM, strKey & strSubkey, strEntry5, intValue5
If intValue5 <> "" Then
arrCitrix = Split(intValue5," ")
Select Case UCASE(arrCitrix(0))
Case "C:\WINDOWS\ISUNINST.EXE"
WScript.Echo "Running command " & intValue5 & " -a"
objShell.Run intValue5 & " -a",0,True
Case "MSIEXEC.EXE"
arrMSIExec = Split(intValue5,"{")
WScript.Echo "Running command MSIExec.exe /qn /X{"&arrMSIExec(1)
objShell.Run "MSIExec.exe /qn /X{"&arrMSIExec(1),0,True
End Select
End If
End If
End If
Next
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
2
Note
You can redirect deployed client to different Server URL with that reg file:

Windows Registry Editor Version 5.00

[-HKEY_CURRENT_USER\SOFTWARE\Citrix\]

[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\PNAgent]
"ServerURL"="https://your-new-server-url"
[HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\PNAgent]
"ServerURLCopy"="your-new-server-url"
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
2
Command Line
Try CitrixOnlinePluginFull.exe /? in CMD to find out supported parameters, such as:

/help
/uninstall
/silent
/noreboot
/preview
/extract

MSI-Property Values are supported too.

CitrixOnlinePluginFull.exe /silent ADDLOCAL="ICA_Client,PN_Agent,SSON,Flash,U
SB,DesktopViewer" SERVER_LOCATION="my.server" ENABLE_SSON="No" INSTALLDIR="C:\my
folder" ENABLE_DYNAMIC_CLIENT_NAME="No" CLIENT_NAME="my_overrided_name" DEFAULT_
NDSCONTEXT="Context1,Context2"
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
1
Note
I used the following script with SMS/SCCM to take advantage of using the SMS/SCCM Distribution Points (DP's) in area's where you might have slow WAN connections. It runs the script from the current location and also expects the installer to be in that location as well.

1. It runs the MSIEXEC unistaller for previous versions of the client.

2. Then it also imports two reg keys that fix an SSO/Passthough Authentication issue with the client.

3. Then it runs the installer with command line options to specify Server Location, SSO on/off, Dynamic Client naming, silent install, as well as an ALLUSERS=1 which fixs some issues when deploying to multiuser environments.

Here it is:

Set WshShell = WScript.CreateObject("WScript.Shell")

On Error Resume Next
WshShell.Run "MSIEXEC /x {4E21223F-8D6C-446E-9CD3-587D206A8400} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {76E4A642-BC3E-438A-8450-0C15A36B5B18l} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {7A1FB67F-A340-472A-97C3-A6AFFE078AAE} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {94F321B9-45B0-4125-970D-DE3D98CBCA1C} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {B2AE44CB-2AAB-4C08-A54B-D264BD604DA8} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {D989BCC0-757C-4FB6-893C-512DF4382656} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {DF1D5FEC-D67C-43C8-9230-41F5DF350196} /qn REBOOT=ReallySuppress", 0, True
WshShell.Run "MSIEXEC /x {E92B7A19-5FD5-4AEE-9FEF-7AD5DD3A675E} /qn REBOOT=ReallySuppress", 0, True
On Error GoTo 0

'This merges 2 reg keys used for Citrix SSO
WshShell.Run "regedit.exe /s" & sCurPath & "citrix_sso1.reg", 0, True
WshShell.Run "regedit.exe /s" & sCurPath & "citrix_sso2.reg", 0, True
WScript.Sleep (10000)

'***************************************************

Dim sCurPath

'This uninstalls old versions of the Citrix Client and then installs the new version
sCurPath = CreateObject("Scripting.FileSystemObject").GetAbsolutePathName(".")
sInstallPath = sCurPath & "\CitrixOnlinePluginFull_v11_2.exe ALLUSERS=1 DONOTSTARTCC=1 /silent /noreboot ENABLE_DYNAMIC_CLIENT_NAME=""Yes"" SERVER_LOCATION=""http://yourserver"" ENABLE_SSON=""Yes"""


WshShell.Run(sInstallPath), 0, True
WScript.Sleep (15000)
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
1
Note
11.2 through 12.1

Needed to perform a non-interactive install (as a service) whilst the user was logged on. Errors included hung installations, VC++ runtime errors, visible dialog boxes and partially failed installs. Some minimized dialog boxes are inevitable.

Solution to hangs on install partly solved by...
http://forums.citrix.com/thread.jspa?threadID=262150&tstart=0

'notstrict.mst' disables the wfcrun32.exe /regserver command

extract the msi's, then install
(order suggested by citrix KB will fail), important to place webwrapper 1st as it contains dependancies for the others.

ICAWebWrapper.msi /quiet /norestart DONOTSTARTCC=1 TRANSFORMS=notstrict.mst
PNAWrapper.msi /quiet /norestart SERVER_LOCATION="http://<server location>"
CitrixHDXMediaStreamForFlash-ClientInstall.msi /quiet /norestart
DesktopViewer.msi /quiet /norestart
GenericUSB.msi /quiet /norestart
SSONWrapper.msi /quiet /norestart ENABLE_SSON="YES"

put in the HKLM runonce or preferably run as a shutdown script to avoid conflicts

"C:\Program Files\Citrix\ICA Client\wfcrun32.exe" /regserver

It is also sugegsted to use GPO preferences to deploy the clients server location...

HKEY_LOCAL_MACHINE\SOFTWARE\Citrix\PNAgent serverURL (SZ)
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
0
Note
I decided to add the current version to the uninstall routine, just in case there was a problem and it needed to be reinstalled. So now the script looks like this (the comments are just to keep the user interested):

@echo Uninstalling previous versions of the Citrix client. Please wait...
@echo off
MSIEXEC /x {4E21223F-8D6C-446E-9CD3-587D206A8400} /qn REBOOT=ReallySuppress
@echo working...
MSIEXEC /x {76E4A642-BC3E-438A-8450-0C15A36B5B18l} /qn REBOOT=ReallySuppress
MSIEXEC /x {7A1FB67F-A340-472A-97C3-A6AFFE078AAE} /qn REBOOT=ReallySuppress
@echo still working...
MSIEXEC /x {94F321B9-45B0-4125-970D-DE3D98CBCA1C} /qn REBOOT=ReallySuppress
MSIEXEC /x {B2AE44CB-2AAB-4C08-A54B-D264BD604DA8} /qn REBOOT=ReallySuppress
@echo still working...
MSIEXEC /x {D989BCC0-757C-4FB6-893C-512DF4382656} /qn REBOOT=ReallySuppress
MSIEXEC /x {DF1D5FEC-D67C-43C8-9230-41F5DF350196} /qn REBOOT=ReallySuppress
@echo almost done...
MSIEXEC /x {E92B7A19-5FD5-4AEE-9FEF-7AD5DD3A675E} /qn REBOOT=ReallySuppress
MSIEXEC /x {388C130B-0079-46B4-A0D5-DC2DD7A89A7B} /qn REBOOT=ReallySuppress
deltree /Y "c:\program files\citrix\ica client"
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
0
Note
Hi,

Modification to the registry as below elevates the installer to Admin as long as you grant the logged on user rights to the area the application needs to install in.

This worked when used in conjunction with the ALLUSERS=1

On a computer running Windows NT 4.0 or Windows 2000, an administrator can set the AlwaysInstallElevated registry keys for both per-user and per-machine installations on the computer. If you want to make sure that all Windows Installer packages are installed with elevated (system) privileges, you must set the AlwaysInstallElevated value to "1" under the following registry keys:
HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Installer

HKEY_LOCAL_MACHINE\Software\Policies\Microsoft\Windows\Installer

Microsoft does warn it opens up for malicious activity, I got around this by closing this up after I was done :)

It works on XP though not documented, you will need to create the key under HKCU as it wasn't there.
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
0
Note
Citrix 'ICA Client / Online plug-in' 11.2

My usual approach to re-packaging would involve extracting the msi's (CitrixOnlinePluginWeb.exe /extract c:\temp) and applying custom transforms, however, even following the individual msi installation order specified in Citrix's documentation the client simply didn't work (see: http://support.citrix.com/proddocs/index.jsp?topic=/online-plugin-112-windows/ica-extract-msi.html). It is stated on the above page that: "Citrix does not recommend extracting the .msi files in place of running the installer packages." So, I'm left with running the CitrixOnlinePluginWeb.exe "package" directly.

FYI - In addition to the command-line options documented above and on the Citrix docs (http://support.citrix.com/proddocs/index.jsp?topic=/online-plugin-112-windows/ica-configure-command-line.html), there's an undocumented property that appears in the example Active Directory deployment script 'DONOTSTARTCC=1', which I presume ought to be used for remote deployments etc.

My command-line therefore looks like this:
CitrixOnlinePluginWeb.exe DONOTSTARTCC=1 /silent /noreboot
(I don't bother to configure any other options on the command-line as I don't have any requirement to.)

The only other issue I encountered was attempting to install the plug-in on a remote machine using the PSEXEC utility. The plug-in executable resided on a network share so I specified a user account with the relevant network access:

PSExec \\computername -u domain\username \\server\share\CitrixOnlinePluginWeb.exe DONOTSTARTCC=1 /silent /noreboot

This failed - sometimes I received a 1602 exit code fairly immediately, at other times psexec timed out. On the target machine a "hidden" C++ runtime error dialog was "displayed" in relation to wfica32.exe, although the dialog appeared on the start bar you couldn't actualy see it until you dragged another window over the top of it - very bizare - and even then the content was still hidden (selecting the dialog Ctrl+C, then paste into notepad revealed the error message content). I can only guess that the installer had issues running in the context of an account without a fully loaded profile as running the install as the logged on user worked fine (perhaps the %temp% environment variable was unavailable & so the installer didn't know where to extract its content?). The resolution was to copy the installer to the target machine and run via PSExec under the LocalSystem account (by using the -s switch, instead of '-u domain\username'):

PSExec \\computername -s c:\temp\CitrixOnlinePluginWeb.exe DONOTSTARTCC=1 /silent /noreboot

No special considerations where necessary when deploying the plugin via "normal" methods e.g. Group Policy, SMS/SCCM etc.

Hopefully these notes will help someone else avoid the best part of a wasted day...
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment
0
Command Line
hidden SILENT flag

PNAWrapper.msi /quiet /norestart SILENT=1

hides a minimied dialog that appears during install
Setup Information:
Setup Type: unspecified
Deployment Method Used: unspecified
Deployment Difficulty: unspecified
Platform(s): Windows
Please log in to comment

Inventory Records (1)

View inventory records anonymously contributed by opt-in users of the K1000 Systems Management Appliance.

Versions

Citrix ICA Client

Version

11

Questions & Answers (4)

Questions & Answers related to Citrix Citrix ICA Client

0
ANSWERS
1
ANSWERS
8
ANSWERS

Blogs (1)

Blog posts related to Citrix Citrix ICA Client

blog