Hi,

I have to migrate from traditional Citrix Xenapp software clients to Citrix Receiver software and unfortunatly Citrix hasn't made this the easiest thing to do.

I need to uninstall any existing Citrix Xenapp or Citrix Receiver client before the new version will successfully install.

There are a couple of gotcha's just to complicate things.

  • There must be a reboot after uninstallation before reinstallation
  • The new software must be installed whilst a user is logged on or it won't install properly

So i'm looking for some suggestions on how to best tackle this with the K1000.

Citrix has provided a cleanup utility which will remove any Citrix client and can be run silently. This works without needing a user logged on but does require a reboot and a user to logon aftewards as it places the final part of the cleanup in the RunOnce registry key.

I do also have a silent install string for the new software but as stated this must be run whilst a user is logged on. (?)

Thanks in advance for your wisdom fellow Ninjas.

2 Comments   [ + ] Show Comments

Comments

  • Does it *really* need to have someone logged in or is simply that the package wants to write to the currently logged-in user's profile? If the latter, you can fix that with either Active Setup or self-healing, depending on whether there are any advertised entry-points in the package.

    Start up a bunch of VMs and try out each scenario. I think you'll find it's just profile stuff needs to get written.
  • I understand the user having to be logged in for citrix receiver, we had to open the browser once to get past a bunch of crap so some other user did not have to.
Please log in to comment

Answers

0

I guess I got lucky on my uninstall-reinstall of citrix, mine did not require a reboot

start /wait MsiExec.exe /X{0A561DC3-36F0-4EBA-961D-531F82D053C9} /qn

start /wait \\dr-acad\programs\installs\W2D\AppInstalls\citrix\CitrixReceiverWeb.exe ADDLOCAL="ICA_Client,Flash,USB" /silent

start /wait iexplore.exe http://acadcitrixweb.tmcc.edu/Citrix/XenApp/auth/login.aspx

For your problem you tagged "kace product support" so I am assuming you have a k1000.

Create a kscript to run the silent uninstall,set some registry keys to cause an autologon and run a "run once". then do a restart after the uninstall.

Something like:

MsiExec.exe /X{0A561DC3-36F0-4EBA-961D-531F82D053C9} /qn

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v AutoAdminLogon /d 1  /f

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v AutoLogonCount /t REG_DWORD /d 1  /f

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultDomainName /d tmccacad  /f

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultUserName /d installer  /f

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultPassWord /d Pa$$word /f

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v runcitrix /d "CitrixReceiverWeb.exe ADDLOCAL="ICA_Client,Flash,USB" /silent"

reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v restart

/d "shutdown.exe -r -t 300"

shutdown -r -t 60

Answered 10/14/2013 by: SMal.tmcc
Red Belt

  • the run once with the shutdown in it will cause a restart after the install and end the autologon.
  • Thanks SMal.tmcc

    I can see from your initial command you possibly aren't having to worry about the single sign-on service. This is the component that necessitates the reboot and login.

    I've taken your scripting idea and made it work. Now when I say it works, it works through my old Altiris Deployment console but I can't get it to work as a K1000 script.
    (is it me or is the K1000 just a pain in the #@% sometimes?)

    The working script (manual run and deployment with Altiris):--

    MD C:\temp

    xcopy "\\melbmanage03\software\citrix client\installwait.bat" c:\temp /y

    xcopy "\\melbmanage03\software\citrix client\ReceiverCleanupUtility.exe" c:\temp /y

    xcopy "\\melbmanage03\software\citrix client\CitrixReceiver4.exe" c:\temp /y

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v AutoAdminLogon /d 1 /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v AutoLogonCount /t REG_DWORD /d 1 /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultDomainName /d DOMAIN /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultUserName /d USERNAME /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows NT\CurrentVersion\WinLogon" /v DefaultPassWord /d PASSWORD /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v CitrixReceiver /t REG_SZ /d "start /wait c:\temp\installwait.bat" /f

    reg.exe add "HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\RunOnce" /v restart /d "shutdown.exe -r -t 300"

    c:\temp\ReceiverCleanupUtility.exe /silent

    shutdown -r -t 60 -f


    As RunOnce doesn't guarantee the order in which entries will run, I had to create the installwait.bat. This file simply uses PING to pause the BAT for 45 seconds then runs the Citrix Receiver installation. This allows time for the RunOnce entries created by the cleanup utility to run first.

    Now, any clues to troubleshoot why the script does nothing in Kace?
    It is set to run as a user with Administrative privileges.
    It is set to Allow Run While Logged Off.

    Nothing seems to happen as no files are copied to the Temp folder or any other part of the script executed.
    • the \\share may not be assessable by the user you are using. You can use a "net use" command and map a drive and copy, or upload them as dependencies and then copy them from the kace directory to a temp area.

      xcopy $(KACE_DEPENDENCY_DIR)\installwait.bat" c:\temp /y

      on the run once issue, since you have a batch file you are running put the shutdown command in the batch file and not as a run once.
Please log in to comment
Answer this question or Comment on this question for clarity
Admin Script Editor
Admin Script Editor is an integrated scripting environment available free here at ITNinja

Share