Notice: This website is an unofficial Microsoft Knowledge Base (hereinafter KB) archive and is intended to provide a reliable access to deleted content from Microsoft KB. All KB articles are owned by Microsoft Corporation. Read full disclaimer for more details.

You receive error 1603 when you try to install the Exchange Server 2010 RU1


View products that this article applies to.

Symptoms

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:
Exchange2010-Rollup1KB976573-x64-en.msp /lvx c:\logFilePath\InstallationLogFile.log
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.

↑ Back to the top


Cause

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.

↑ Back to the top


Workaround

To work around this issue, you must temporarily remove any definition of MachinePolicy and UserPolicy in the ExecutionPolicy.

Determine defined policies

To determine which of the policies is defined, follow these steps:
  1. Click Start
    , and then type cmd in the Search programs and files box.
  2. Right-click cmd.exe in the Programs list, and then click Run as administrator.
    If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
  3. At the command prompt, copy or type the following command, and then press ENTER:
    mmc
  4. On the File menu, click Add/Remove Snap-in.
  5. Select Computer Management in the list of snap-ins, and then click Add.
  6. Select Local Computer, and then click Finish.
  7. Click Close, and then click OK.
  8. Expand Computer Management, expand Services and Applications, and then click Services.
  9. Right-click Windows Management Instrumentation, and then click Properties.
  10. For Startup type, select Automatic, click Apply, and then click Start.
  11. Close Microsoft Management Console.
  12. Click Start
    , point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
  13. At the command prompt, type the following command, and then press ENTER:
    get-executionpolicy �list
  14. 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.

Locally defined execution policy

For a locally defined execution policy, follow these steps:
  1. Click Start
    , and then type cmd in the Search programs and files box.
  2. Right-click cmd.exe in the Programs list, and then click Run as administrator.
    If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
  3. At the command prompt, copy or type the following command, and then press ENTER:
    mmc
  4. On the File menu, click Add/Remove Snap-in.
  5. Click Add, select Group Policy Object Editor in the list of snap-ins, and then click Add.
  6. Select Local Computer, and then click Finish.
  7. Click OK.
  8. 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:
    1. Expand Local Computer Policy, expand Computer Configuration, expand Administrative Templates, expand Windows Components, and then click Windows PowerShell.
    2. Right-click Turn on Script Execution, and then click Properties.
    3. Select Not Configured, and then click OK.
    For UserPolicy:
    1. Expand Local Computer Policy, expand User Configuration, expand Administrative Templates, expand Windows Components, and then click Windows PowerShell.
    2. Right-click Turn on Script Execution, and then click Properties.
    3. Select Not Configured, and then click OK.
  9. Close Microsoft Management Console.
  10. Click Start
    , point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
  11. At the command prompt, type the following command, and then press ENTER:
    exchange_install_folder\bin\ServiceControl.ps1 AfterPatch
    Note In this command, the exchange_install_folder placeholder represents where the Exchange update rollup installer is located.
  12. Install Exchange 2010 RU1 or Exchange 2010 RU2.

Execution policy defined on AD DS

For an execution policy defined on AD DS, follow these steps on the domain controller that hosts AD DS:
  1. Click Start
    , and then type cmd in the Search programs and files box.
  2. Right-click cmd.exe in the Programs list, and then click Run as administrator.
    If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
  3. At the command prompt, copy or type the following command, and then press ENTER:
    gpresult /z>PolicySettings.txt
  4. Open the file PolicySettings.txt in Notepad.
  5. Search for the following entry in the list:
    GPO: Servers - Baseline v2.0
    KeyName: KeyPath\PowerShell\ExecutionPolicy
    Value: KeyValues_comma_delimited_list
    State: Enabled
    Note where in the Group Policy hierarchy that this entry resides. Repeat this step to determine whether there are other entries that reference "PowerShell."
  6. Click Start
    , click Control Panel, double-click Administrative Tools, and then double-click Group Policy Management.
  7. Locate the Group Policy object that defines the Windows PowerShell execution policy, and set this entry to Not Configure.
  8. Click Start
    , and then type cmd in the Search programs and files box.
  9. Right-click cmd.exe in the Programs list, and then click Run as administrator.
    If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
  10. 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.
  11. On the Exchange 2010 server where the installation of the update rollup failed, click Start
    , and then type cmd in the Search programs and files box.
  12. Right-click cmd.exe in the Programs list, and then click Run as administrator.
    If you are prompted for an administrator password or for confirmation, type the password, or provide confirmation.
  13. 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.
  14. Click Start
    , point to All Programs, point to Accessories, point to Windows PowerShell, and then click Windows PowerShell.
  15. At the command prompt, type the following command, and then press ENTER:
    exchange_install_folder\bin\ServiceControl.ps1 AfterPatch
    Note In this command, the exchange_install_folder placeholder represents where the Exchange update rollup installer is located.
  16. Install Exchange 2010 RU1 or Exchange 2010 RU2.

↑ Back to the top


Keywords: KB981474, kbprb, kbsurveynew, kbtshoot, kbexpertiseinter, kbinstallation

↑ Back to the top

Article Info
Article ID : 981474
Revision : 1
Created on : 3/18/2010
Published on : 3/18/2010
Exists online : False
Views : 929