System TipThis article applies to a different operating system than the one you are using. Article content that may not be relevant to you is disabled.
When you try to install the Update Rollup 1 for Microsoft Exchange Server 2010, the installation fails, and you receive a 1603 error code.
Then, you create an installation log by using the following Setup Program switch:
The installation log file resembles the following:
////////////
MSI (s) (60:74) [Timestamp]: Doing action: CA_START_REMOVEDATA_SERVICES
Action start Time: CA_START_REMOVEDATA_SERVICES.
MSI (s) (60:74) [Timestamp]: Transforming table CustomAction.
MSI (s) (60:74) [Timestamp]: Transforming table CustomAction.
MSI (s) (60:74) [Timestamp]: Note: 1: 2262 2: CustomAction 3: -2147287038
MSI (s) (60:74) [Timestamp]: Note: 1: 2235 2: 3: ExtendedType 4: SELECT `Action`,`Type`,`Source`,`Target`, NULL, `ExtendedType` FROM `CustomAction` WHERE `Action` = 'CA_START_REMOVEDATA_SERVICES'
MSI (s) (60:74) [Timestamp]: Transforming table CustomAction.
MSI (s) (60:74) [Timestamp]: Transforming table CustomAction.
MSI (s) (60:74) [Timestamp]: Note: 1: 2262 2: CustomAction 3: -2147287038
MSI (s) (60:74) [Timestamp]: Transforming table Binary.
MSI (s) (60:74) [Timestamp]: Transforming table Binary.
MSI (s) (60:74) [Timestamp]: Note: 1: 2262 2: Binary 3: -2147287038
MSI (s) (60:74) [Timestamp]: Creating MSIHANDLE (99) of type 790542 for thread 1652
MSI (s) (60:A0) [Timestamp]: Invoking remote custom action. DLL: C:\Windows\Installer\MSI2978.tmp, Entrypoint: CAQuietExec
MSI (s) (60!88) [Timestamp]: Creating MSIHANDLE (100) of type 790541 for thread 4232
MSI (s) (60!88) [Timestamp]: Creating MSIHANDLE (101) of type 790531 for thread 4232
MSI (s) (60!88) [Timestamp]: Closing MSIHANDLE (101) of type 790531 for thread 4232
MSI (s) (60!88) [Timestamp]: PROPERTY CHANGE: Deleting QtExecCmdLine property. Its current value is '"DriveLetter:\Program Files\Microsoft\Exchange Server\V14\\bin\QuietExe.exe" "C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe" " -command . 'DriveLetter:\Program Files\Microsoft\Exchange Server\V14\\bin\servicecontrol.ps1' AfterPatch"'.
MSI (s) (60!88) [Timestamp]: Creating MSIHANDLE (102) of type 790531 for thread 4232
CAQuietExec: Error 0x80070001: Command line returned an error.
MSI (s) (60!88) [Timestamp]: Closing MSIHANDLE (102) of type 790531 for thread 4232
MSI (s) (60!88) [Timestamp]: Creating MSIHANDLE (103) of type 790531 for thread 4232
CAQuietExec: Error 0x80070001: CAQuietExec Failed
MSI (s) (60!88) [Timestamp]: Closing MSIHANDLE (103) of type 790531 for thread 4232
MSI (s) (60!88) [Timestamp]: Closing MSIHANDLE (100) of type 790541 for thread 4232
CustomAction CA_START_REMOVEDATA_SERVICES returned actual error code 1603 (note this may not be 100% accurate if translation happened inside sandbox)
MSI (s) (60:A0) [Timestamp]: Closing MSIHANDLE (99) of type 790542 for thread 1652
Action ended 6:21:13: CA_START_REMOVEDATA_SERVICES. Return value 3.
MSI (s) (60:74) [Timestamp]: Transforming table InstallExecuteSequence.
MSI (s) (60:74) [Timestamp]: Transforming table InstallExecuteSequence.
MSI (s) (60:74) [Timestamp]: Note: 1: 2262 2: InstallExecuteSequence 3: -2147287038
Action ended Time: INSTALL. Return value 3.
////////////
Additionally, this issue can occur when you try to install Update Rollup 2 for Exchange Server 2010.
This issue occurs when the following condition is true:
The Group Policy object (GPO), ExecutionPolicy, defines one or both of the following policies:
MachinePolicy
UserPolicy
It is not important how either of the two policies is defined. This issue occurs because the policies are defined.
When you run the Exchange 2010 RU1 or Exchange 2010 RU2 installer, the installer stops and disables the Windows Management Instrumentation (WMI) service. When either MachinePolicy or the UserPolicy is defined, the WMI service must be enabled to run the Windows PowerShell script that is named ServiceControl.ps1. The WMI service is used to access settings that are stored in Active Directory Domain Services (AD DS). This is how Windows PowerShell determines permissions for whether a script or cmdlet can be executed.
To determine which of the policies is defined, follow these steps:
Click Start
Collapse this imageExpand this image
, and then type cmd in the Search programs and files box.
Right-click cmd.exe in the Programs list, and then click Run as administrator.
Collapse this imageExpand this image
If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
At the command prompt, copy or type the following command, and then press ENTER:
mmc
On the File menu, click Add/Remove Snap-in.
Select Computer Management in the list of snap-ins, and then click Add.
Select Local Computer, and then click Finish.
Click Close, and then click OK.
Expand Computer Management, expand Services and Applications, and then click Services.
Right-click Windows Management Instrumentation, and then click Properties.
For Startup type, select Automatic, click Apply, and then click Start.
Close Microsoft Management Console.
Click Start
Collapse this imageExpand this image
, point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
At the command prompt, type the following command, and then press ENTER:
get-executionpolicy –list
Note which policy, MachinePolicy or UserPolicy, is defined. If the policy is undefined, the policy is listed as Undefined. Note how each policy is defined, for example, with the execution policy AllSigned or Restricted.
For a locally defined execution policy, follow these steps:
Click Start
Collapse this imageExpand this image
, and then type cmd in the Search programs and files box.
Right-click cmd.exe in the Programs list, and then click Run as administrator.
Collapse this imageExpand this image
If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
At the command prompt, copy or type the following command, and then press ENTER:
mmc
On the File menu, click Add/Remove Snap-in.
Click Add, select Group Policy Object Editor in the list of snap-ins, and then click Add.
Select Local Computer, and then click Finish.
Click OK.
Depending on which execution policy was defined, as noted in step 3 of the "Determine defined policies" section, follow the steps for MachinePolicy or UserPolicy as appropriate:
For MachinePolicy:
Expand Local Computer Policy, expand Computer Configuration, expand Administrative Templates, expand Windows Components, and then click Windows PowerShell.
Right-click Turn on Script Execution, and then click Properties.
Select Not Configured, and then click OK.
For UserPolicy:
Expand Local Computer Policy, expand User Configuration, expand Administrative Templates, expand Windows Components, and then click Windows PowerShell.
Right-click Turn on Script Execution, and then click Properties.
Select Not Configured, and then click OK.
Close Microsoft Management Console.
Click Start
Collapse this imageExpand this image
, point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
At the command prompt, type the following command, and then press ENTER:
Note where in the Group Policy hierarchy that this entry resides. Repeat this step to determine whether there are other entries that reference "PowerShell."
Click Start
Collapse this imageExpand this image
, click Control Panel, double-click Administrative Tools, and then double-click Group Policy Management.
Locate the Group Policy object that defines the Windows PowerShell execution policy, and set this entry to Not Configure.
Click Start
Collapse this imageExpand this image
, and then type cmd in the Search programs and files box.
Right-click cmd.exe in the Programs list, and then click Run as administrator.
Collapse this imageExpand this image
If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
At the command prompt, copy or type the following command, and then press ENTER:
gpupdate /force
This command forces replication of the policy change on all servers and user accounts.
On the Exchange 2010 server where the installation of the update rollup failed, click Start
Collapse this imageExpand this image
, and then type cmd in the Search programs and files box.
Right-click cmd.exe in the Programs list, and then click Run as administrator.
Collapse this imageExpand this image
If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
At the command prompt, copy or type the following command, and then press ENTER:
net start winmgmt
This command starts WMI so that the Windows PowerShell script (ServiceControl.ps1) that is listed in step 15 can run successfully.
Click Start
Collapse this imageExpand this image
, point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
At the command prompt, type the following command, and then press ENTER: