| | | | | | | |

  Terminal Services
 
 
 

Article Written 5-1-2005

Enterprise Wide Upgrade of Citrix Program Neighborhood ICA Client 32

Introduction: There are many different ways to upgrade the ICA Client Program Neighborhood. This article covers the approach we took in upgrading existing ICA Client 6.31 clients to Version 9.0 using a central deployment method.

Goals:

1. Upgrade ICA Client Program Neighborhood from 6.31 to 9.0

2. Rollout new appsrv.ini and pn.ini files.

3. Perform the above 2 steps for all user profiles on all client PC's.


Preparation Tasks

1. Created an Administrative install for the 9.0 client,

"msiexec /a ica32pkg.msi"





2. Replaced customized appsrv.ini, appsrv.src, pn.ini, pn.srv files in the administrative install.

Note: These customized srv and ini files will not get copied to the client C:\Program Files\Citrix\ICA Client\ folder for an upgrade situation, but will get copied for a clean install.

The srv and ini files must be copied to the C:\Program Files\Citrix\ICA Client\ using a script or a pre built Windows Installer MSI.

3. We created customized Windows Installer package using Wise Installer to copy our customized src and ini files to the client PC after the upgrade.

Note: We tested a script with logic in our logon script, which I have heard is working nicely for alot of people, but we decided to use the pre-built customized MSI to rollout the src and ini files to the client PC' C:\Program Files\Citrix\ICA Client\

4. Next we created a script to rename the pn.ini and appsrv.ini files in each local user profile. This way when the user either logged in or re launched the Program Neighborhood the pn.ini and appsrv.ini from the C:\Program Files\Citrix\ICA Client\ would get copied to their profile with the customized settings.

Set FS = CreateObject("Scripting.FileSystemObject")
Set DocsFolder = FS.GetFolder("c:\Documents and Settings\")
Set Folderset = DocsFolder.Subfolders
For Each SubFolder In Folderset
On Error Resume Next
Set UserFolder = FS.GetFolder(SubFolder&"\Application Data\ICAClient\")
FS.MoveFile UserFolder & "\pn.ini" , UserFolder & "\pn1.ini"
FS.MoveFile UserFolder & "\appsrv.ini" , UserFolder & "\appsrv1.ini"

Next



Putting it all together:

Our centralized deployment product "Altiris" allowed us to create a single job with 3 tasks.

Task 1 - msiexec /i ica32pkg.msi ALLOW_REBOOT=No REBOOT=ReallySupress

Task 2 - Copy appsrv.ini, appsrv.src, pn.ini, pn.src to C:\Program Files\Citrix\ICA Client\

Note: We did not have to use the our pre-biult MSI to copy the files after all, Altiris allowed us to create a task that simply copied the files to C:\Program Files\Citrix\ICA Client\.

Task 3 - Created task to run the above VB script that renames pn.ini to pn1.ini and appsrv.ini to appsrv1.ini in all local profiles on the target PC.

To Summarize: We would have preferred to create an MST file for the ics32pkg.msi to perform the ini and src file updates for both locations, however the msi property settings are not well documented. It would have been nice to configure the XML server location and to over write the pn and appsrv files with the MST approach.

One final Very Important key point; If you install the ICA Client using the MSI to client PCs, you cannot use the Citrix ICA Client Distribution to upgrade in the future, it will not upgrade over the top of an MSI install. This is confirmed behavior from Citrix Support.


Written by Scott Chiara


Quick Links

schiara@thin-world.com