Inexplicably, the installation of Citrix Universal Print Server 7.12 rolls back with error 1603.
Workflow:
---------------
- Installed from Auto-Select and chose Universal Print Server from the features on the Right of the dialog.
- Went with all defaults in the installation wizard.
- Once the installation was committed, the Windows Installer rolled-back.
This is what was seen in the
Summary dialog of the installation.

There should be
both the 32- and 64-bit Runtime libraries instead of just one of them.

Once the installation rolled back, the
Programs Applet in
Control Panel looked like this:

Note that the
Size field in the installer database
might be empty for a component that failed to install correctly. In our testing we not only witnessed what is pictured above, but also an instance where the 64-bit version of the C++ 2013 Runtime might be present but with no size. In this case, it did not install at all.
Error Dialogs:-------------------Click on
Why did this fail?

Click on
View Details...
Error Id: XDMI:5FD32D0D Exception: Citrix.MetaInstaller.MetaInstallerException Installation of MSI File 'UpsServer_x64.msi' failed with code 'InstallFailure' (1603). at Citrix.MetaInstaller.Msi.InstallProduct(InstallationContext context, String msiPath, String parameters) at Citrix.MetaInstaller.MsiComponent.Install(InstallationContext context) at Citrix.MetaInstaller.InstallationManager.InstallComponent(IInstallableComponent component, InstallationContext installContext)The event logs
might indicate that Universal Print Server was installed, but upon looking at the Services MMC Snap-in (
services.msc) that may not be the case.

What is missing is the
Citrix Universal Print Server service.
Additionally, looking in the file system of the server under
C:\Program Files\Citrix the folder for the server is not present. What might be present is a folder called
XenDsktopPrintServerSetup which contains the installation files as which should have been cleaned up once the installation completes successfully.
Application Event Logs:-----------------------------When the failure condition occurs, we will see this progression of MsiInstaller events in the Application Log:
INFO - Event 1033 - MsiInstaller - “Windows Installer installed the product. Product Name: Citrix Diagnostics Facility. Product Version: 7.1.2.0. Product Language: 1033. Manufacturer: Citrix Systems, Inc.. Installation success or error status: 0.”
ERROR - Event 10005 - MsiInstaller - “Product: Citrix Universal Print Server -- You must install Microsoft Visual C++ 2013 Redistributable x64 before installing Citrix Universal Print Server"
INFO - Event 11708 - MsiInstaller - “Product: Citrix Universal Print Server -- Installation failed.”
INFO - Event 1033 - MsiInstaller - “
Windows Installer installed the product. Product Name: Citrix Universal Print Server. Product Version: 7.12.0.29. Product Language: 1033. Manufacturer: Citrix Systems, Inc.. Installation success or error status: 1603."
The first clause in the last event 1033 message (italicized) is not accurate. When replicating the issue and the sequence of events depicted above, the product
did not install correctly.
Installation Logs:-------------------------There are three logs of interest generated by the XenDesktop Meta-Installer when installing Citrix Universal Print Server:
- XenDesktop Installation.log —> "C:\Users\TheDude\AppData\Local\Temp\Citrix\XenDesktop Installer\XenDesktop Installation.log”
- cdf_x64{randomvalue}.log —> This is a verbose Windows Installer log for the Citrix Diagnostic Facility (CDF) service. View only if there is an issue installing this service. (Will not be covered here).
- UpsServer_x64{random value}.log —> This is a verbose Windows Installer log for the Citrix Print Manager Service.
Normally, the
XenDesktop Installation Log should read like this:
- What is being installed (Citrix Universal Print Server) — main product and components.
- Enumerate what components are Prerequisites (should be both the 32- and 64-bit version of the C++ 2013 Runtime Libraries or Redistributable).
- Install the Roles, .NET Framework, and the C++ 2013 Runtime libraries if needed.
- Install the Citrix Diagnostic Facility Service (64-bit) — this allows for code-level logging (CDT Traces) to be taken if needed on the print server.
- Install Citrix Universal Print Server (64-bit)
- Installer cleans up and ends the installation.
Below is how is
actually read and how it points to an issue. The
XenDesktop Installation Log will tell us that something went wrong in the installation and what components (UpsServer, in this case) were impacted. Once we look at this log and identify the failing component, we move on to the relevant log for the failing component.
First,
Key/Message format: Timestamp :Message// —> comments added for this article and which do not appear in the logs[XenDesktop Installation Log]Component Enumeration:
11:15:30.1004 : XenDesktopSetup:Component 'Microsoft .NET Framework 4.5.2' and dependencies instantiated. 11:15:30.1014 : XenDesktopSetup:Component 'Citrix Diagnostics Facility' and dependencies instantiated. 11:15:30.1034 : XenDesktopSetup:Component 'Microsoft Visual x86 C++ 2013 Runtime' and dependencies instantiated. 11:15:30.1044 : XenDesktopSetup:Component 'Microsoft Visual x64 C++ 2013 Runtime' and dependencies instantiated. 11:15:30.1044 : XenDesktopSetup:Component 'Printing Server Role' and dependencies instantiated. 11:15:30.1044 : XenDesktopSetup:Component 'Citrix Universal Print Server' and dependencies instantiated.C++ Runtime Library Installation
// Next line indicates that the 64-bit version of the 2013 C++ Runtime Library was found and will be skipped. Not the version number.11:21:32.4257 : XenDesktopSetup:Found installed MSI product upgrade code'{3868550C-1532-316A-9EFF-8509A6E92F79}', product code {20C1086D-C843-36B1-B678-990089D1BD44}, version '12.0.40649'…// Now its only going to successfully install the 32-bit version of the 2013 C++ Runtime Library.11:21:37.8422 : XenDesktopSetup:Starting synchronous process 'D:\Support\VcRedist_2013_RTM\vcredist_x86.exe' with args '/q /log "C:\Users\TheDude\AppData\Local\Temp\Citrix\XenDesktop Installer\Microsoft\vc_runtime_2013_x86.log"' 11:21:47.2159 : XenDesktopSetup:Process completed with error code 0 11:21:47.2169 : XenDesktopSetup:InstallComponent: Installed component 'Microsoft Visual x86 C++ 2013 Runtime'…// Next, it installs the Citrix Diagnostic Facility which ends successfully.11:21:48.5906 : XenDesktopSetup:About to install MSI File 'D:\x64\Virtual Desktop Components\cdf_x64.msi' using params 'INSTALLLOCATION="C:\Program Files\Citrix" ARPSYSTEMCOMPONENT="1" MSIFASTINSTALL="1" MSIRMSHUTDOWN="2"' log file is 'C:\Users\JorgeH-Admin\AppData\Local\Temp\Citrix\XenDesktop Installer\MSI Log Files\cdf_x64476069893.txt' 11:21:48.5906 : XenDesktopSetup:Starting synchronous process 'msiexec' with args '/i "D:\x64\Virtual Desktop Components\cdf_x64.msi" /lv "C:\Users\JorgeH-Admin\AppData\Local\Temp\Citrix\XenDesktop Installer\MSI Log Files\cdf_x64476069893.txt" /quiet INSTALLLOCATION="C:\Program Files\Citrix" ARPSYSTEMCOMPONENT="1" MSIFASTINSTALL="1" MSIRMSHUTDOWN="2" CLOUD=False REBOOT=ReallySuppress' 11:21:59.8674 : XenDesktopSetup:Process completed with error code 0 11:21:59.8674 : XenDesktopSetup:Installation of MSI File 'D:\x64\Virtual Desktop Components\cdf_x64.msi' succeeded...// Finally, the installation of UPServer itself which does not end well.11:22:00.3074 : XenDesktopSetup:About to install MSI File 'D:\x64\Universal Print Server\UpsServer_x64.msi' using params 'INSTALLLOCATION="C:\Program Files\Citrix" ARPSYSTEMCOMPONENT="1" MSIFASTINSTALL="1" MSIRMSHUTDOWN="2"' log file is 'C:\Users\JorgeH-Admin\AppData\Local\Temp\Citrix\XenDesktop Installer\MSI Log Files\UpsServer_x643262001.txt' 11:22:00.3074 : XenDesktopSetup:Starting synchronous process 'msiexec' with args '/i "D:\x64\Universal Print Server\UpsServer_x64.msi" /lv "C:\Users\JorgeH-Admin\AppData\Local\Temp\Citrix\XenDesktop Installer\MSI Log Files\UpsServer_x643262001.txt" /quiet INSTALLLOCATION="C:\Program Files\Citrix" ARPSYSTEMCOMPONENT="1" MSIFASTINSTALL="1" MSIRMSHUTDOWN="2" CLOUD=False REBOOT=ReallySuppress' 11:22:01.0224 : XenDesktopSetup:Process completed with error code 1603 11:22:01.0244 $ERR$ : XenDesktopSetup:Installation of MSI File 'UpsServer_x64.msi' failed with code 'InstallFailure' (1603). 11:22:01.0264 $ERR$ : XenDesktopSetup:InstallComponent: Failed to install component 'Citrix Universal Print Server'. Installation of MSI File 'UpsServer_x64.msi' failed with code 'InstallFailure' (1603). 11:22:01.0274 $ERR$ : XenDesktopSetup:Recording installation failure. Installation of MSI File 'UpsServer_x64.msi' failed with code 'InstallFailure' (1603). 11:22:01.0274 PROC : XenDesktopSetup:InstallComponent: Exit// Note the absence of a “we succeeded” message at the end of the block.[end XenDesktop Installation Log]Going to the
UpsServerx64___.log to see further details as to
why the installation failed…
Key/Message format: Timestamp :Message// —> comments added for this article and which do not appear in the logs[UpsServer Installation Log — excerpts]// Make sure the installation was performed with Admin privileges… TRUEMSI (s) (CC:F0) [11:22:00:981]: MSI_LUA: Setting MsiRunningElevated property to 1 because the install is already running elevated....// What is actually being installed...MSI (s) (CC:F0) [11:22:00:981]: PROPERTY CHANGE: Adding OriginalDatabase property. Its value is 'D:\x64\Universal Print Server\UpsServer_x64.msi’.…// Start of the installation…MSI (s) (CC:F0) [11:22:00:990]: Doing action: INSTALL…// Installer is performing a Procedure called “LaunchConditions” which we can deduce looks at the prerequisites prior to installing// binaries and other configuration actions.MSI (s) (CC:F0) [11:22:00:998]: Doing action: LaunchConditions MSI (s) (CC:F0) [11:22:00:998]: Note: 1: 2205 2: 3: ActionText Action ended 11:22:00: AppSearch. Return value 1. Action start 11:22:00: LaunchConditions. MSI (s) (CC:F0) [11:22:01:000]: Note: 1: 2205 2: 3: Error ...MSI (s) (CC:F0) [11:22:01:000]: Product: Citrix Universal Print Server -- You must install Microsoft Visual C++ 2013 Redistributable x64 before installing Citrix Universal Print Server...
// Return Value 3 = “The system cannot find the path specified.” or something similar// Installation fails, throws the Error 1603 we see in event logs and windows dialogs, and the installer rolls-back and exits.Action ended 11:22:01: LaunchConditions. Return value 3. Action ended 11:22:01: INSTALL. Return value 3. MSI (s) (CC:F0) [11:22:01:002]: Note: 1: 1708 MSI (s) (CC:F0) [11:22:01:002]: Note: 1: 2205 2: 3: Error…MSI (s) (CC:F0) [11:22:00:997]: PROPERTY CHANGE: Adding VC2013_X86_INSTALLED property. Its value is '12.0.21005’....MSI (s) (CC:F0) [11:22:01:002]: Product: Citrix Universal Print Server -- Installation failed. …
MSI (s) (CC:F0) [11:22:01:003]: Windows Installer installed the product. Product Name: Citrix Universal Print Server. Product Version: 7.12.0.29. Product Language: 1033. Manufacturer: Citrix Systems, Inc.. Installation success or error status: 1603. [end UpsServer Installation Log]