Views: 8.2k  |  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