Citrix Receiver 4 Install - SelfServicePlugin.exe - This application could not..

Hi,
Due to the user base of Citrix Receiver I don’t want to enforce an install - thus users can defer it until a suitable time.

Using the normal PSAppDeploy kit template I execute the following process:
Execute-Process -Path “CitrixReceiver_4.10.0.exe” -Parameters “/ALLOWADDSTORE=N /silent /noreboot /AutoUpdateCheck=disabled” -WindowStyle Hidden

If I run this entire script within Powershell ISE with local machine admin rights, it installs without issue.

However if I install this via SCCM 2012,
Install Program: Deploy-Application.exe
User Experience
-Installation behaviour - Install for system
-Logon requirement - Only when a user is logged on
-Installation program visibility - Normal
Ticked Allow users to view and interact with the program installation

I’m then greeted by “SelfServicePlugin.exe - This application could not be started.”

I’ve run this with psexec, same problem. I’ve added switch ADDLOCAL=SELFSERVICE, same problem.

If I strip away all the powershell and install with a bat file via SCCM silently without user interaction, it installs without issue.

Any advice why the deployment kit via sccm does not do the job?

It appears that when installing from the original bat file via SCCM deployment, citrix receiver exe installer extracts files to C:\Program Files (x86)\Citrix\ICA Client
And then runs the installation from there. This is where selfserviceplugin.exe runs from and installs fine.
When deployed using the Powershell App Deploy Kit, the same exe extracts its files to C:\Windows\SysWOW64\config\systemprofile\AppData\Local\Citrix\SelfService\Program Files
And I believe this is causing the issue - whatever the issue is.

Why not extract the media and install each MSI individually and apply a transform file for the self service plugin? I had to go this route because I needed to give the users an option to choose which StoreFront Configuration they desired. I did this by populating a form, taking the results from the form and appending the desired transform.

Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\AuthManager.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\CitrixHDXMediaStreamForFlash-ClientInstall.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\DesktopViewer.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\GenericUSB.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\ICAWebWrapper.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\RIInstaller.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\SelfServicePlugin.msi” -Transform “$dirFiles\Custom\SelfServicePlugin.msi.EastStore.mst” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\SSONWrapper.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\Vd3dClient.msi” | Out-Null
Execute-MSI -Action ‘Install’ -Path “$dirFiles\Installers\WebHelper.msi” | Out-Null

1 Like

Good idea, I was following tradition of what had been done by other packagers.
What is in your transform?
And to which would I apply the following?
ALLOWADDSTORE=N
/AutoUpdateCheck=disabled

Custom items in transform located under property table within Orca.

ALLUSERS 1
STORE0 -<STOREURL>
STORE1 <STOREURL>
ALLOWADDSTORE A

Auto Update we have disabled via GPO.