When set to manual, TrustedInstaller service fails to install updates

Article translations Article translations
Article ID: 968440 - View products that this article applies to.
Expand all | Collapse all
Source: Microsoft Support

RAPID PUBLISHING

RAPID PUBLISHING ARTICLES PROVIDE INFORMATION DIRECTLY FROM WITHIN THE MICROSOFT SUPPORT ORGANIZATION. THE INFORMATION CONTAINED HEREIN IS CREATED IN RESPONSE TO EMERGING OR UNIQUE TOPICS, OR IS INTENDED SUPPLEMENT OTHER KNOWLEDGE BASE INFORMATION.

Symptom



After beginning an update process, the updates are not installed. An event such as the following may be logged:

Log Name:      System

Source:        Microsoft-Windows-WindowsUpdateClient

Date:          01.08.2008 13:04:34

Event ID:      20

Task Category: Windows Update Agent

Level:         Error

Keywords:      Installation,Installation

User:          SYSTEM

Computer:      <ComputerName>

Description:

Installation Failure: Windows failed to install the following update with error 0x8000ffff: Update for Windows (KB943729).

 

When you review ComputerName_SoftDistReportingEvents.LOG, you may find the following:

 

{64C0C2FD-AE33-41B4-B489-A1B52ECE5667}     2008-06-20 11:58:30:215+0200   1             182         101         {8FB23541-BD3F-4E49-A693-4FB12C81F2B3}     501         80242014             wusa     Failure  Content Install  Installation Failure: Windows failed to install the following update with error 0x80242014: Update for Windows (KB941693).

Cause



The TrustedInstaller service changes the default service startup type of Manual (3) to Automatic (2), when it encounters an update that has to process a transaction after a restart.   When the value is set back to Manual before the restart the transaction that has to be applied after restart cannot be applied.  This transaction will be pended. It will block all other update installations that might come up.

Resolution



If updates are not applied, check the value of the registry key:

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TrustedInstaller\Start 

 

The default value is Manual, but sometimes it is changed to Automatic by the TrustedInstaller service itself. If the value is set to Manual, and you find the following entry in the Cbs.log, then you are seeing this problem:

 

Pending transaction content must be resolved, cannot begin another transaction yet

 

When you start the TrustedInstaller manually, you can see that the value of the registry key will change to Automatic. After an immediate restart, the update should be applied. For successful processing, see the information in the “More information” section.

 

To resolve this problem, find the policy or script that sets the TrustedInstaller startup type to Manual, and disable this policy or remove the script.

More Information

The Windows Vista TrustedInstaller service is responsible for installing updates on Windows Vista.  When a set of hotfixes have to be applied, some of them might need a restart.  When they need a restart, they are put in a pending queue. A pending.xml file is generated that contains information about the update to be applied.  Then the service Start value is set from Manual to Automatic so that when the system is started, the service is started and drains the queue.

 

If the service Start value is set to Manual, the updates are never applied.  The registry key that is used for this setting is as follows:

 

HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\TrustedInstaller\Start 

 

The display name of this service in services.msc is "Windows Modules Installer."

 

If you experience this problem that no updates can be applied on a Vista system, then check this value.  If you stop and start the TrustedInstaller service and restart immediately, the problem might resolve.  

 

If the update fails because of this problem, you will see the following in the cbs.log:

 

2008-11-28 10:29:54, Info                  CSI    00000047@2008/11/28:09:29:54.814 CSI Transaction @0x3ce7c0 initialized for deployment engine {d16d444c-56d8-11d5-882d-0080c847b195} with flags 00000002 and client id [26]"TI5.29970747:3737716769:1/"

 

2008-11-28 10:29:54, Info                  CSI    00000048 Pending transaction content must be resolved, cannot begin another transaction yet

2008-11-28 10:29:54, Error                 CSI    00000049 (F) E_UNEXPECTED #626# from Windows::COM::CComponentStore::InternalTransact(...)[gle=0x8000ffff]

2008-11-28 10:29:54, Error                 CSI    0000004a@2008/11/28:09:29:54.814 (F) d:\rtm\base\wcp\componentstore\com\store.cpp(4186): Error E_UNEXPECTED originated in function Windows::COM::CComponentStore::InternalTransact expression: ((HRESULT)0x8000FFFFL)

[gle=0x80004005]

2008-11-28 10:29:55, Error                 CSI    0000004b (F) E_UNEXPECTED #624# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_Analyze(Flags = 0, riid = {f4d9decb-0250-4ad4-9500-85c7f2f281ec}, ppUnk = NULL[gle=0x8000ffff]

2008-11-28 10:29:55, Error                 CSI    0000004c (F) E_UNEXPECTED #623# from Windows::ServicingAPI::CCSITransaction_ICSITransaction::Analyze(flags = 0, riid = {f4d9decb-0250-4ad4-9500-85c7f2f281ec}, ppta = ppta)

 

“Pending transaction content must be resolved, cannot begin another transaction yet” means that no new transactions can be processed until the blocking transaction is resolved.  The blocking transaction is the transaction that has to be processed after restart.  This can only be done only when the TrustedInstaller service is set to Automatic before the restart.

 

The normal processing of a transaction that needs a restart to be applied looks as follows:

 

2008-11-28 10:21:10, Info                  CBS    NonStart: Checking to ensure startup processing was not required.

2008-11-28 10:21:10, Info                  CSI    00000004 IAdvancedInstallerAwareStore_ResolvePendingTransactions (call 1) (flags = 00000004, progress = NULL, phase = 0, pdwDisposition = @0x422fd70

2008-11-28 10:21:10, Info                  CBS    NonStart: Startup processing is required unexpectedly, scheduled Trusted Installer for auto-start again. hr: 0x0

2008-11-28 10:26:52, Info                  CSI    00000005 CSI Store 3464176 (0x0034dbf0) initialized

2008-11-28 10:26:52, Info                  CBS    Session: 29970747:1918468877 initialized.

 

"Scheduled Trusted Installer for auto-start again" means that the Start value of the service is set to Automatic. When you find several restarts on the system from the time of the log entry to the current time then your TrustedInstaller service will have been set back to a Start value of Manual before the first restart. This is the evidence you have to look for to verify the problem.

 

When the TrustedInstaller is set to Automatic correctly, you will see the following processing in the cbs.log:

 

2008-11-28 10:31:08, Info                  CBS    Shtd: Begin shutdown processing.

2008-11-28 10:31:08, Info                  CBS    Shtd: Entered process lock.

2008-11-28 10:31:08, Info                  CBS    Shtd: progress thread started

2008-11-28 10:31:08, Info                  CBS    Shtd: Initializing driver operations queue.

2008-11-28 10:31:08, Info                  CBS    Shtd: current ExecuteState is 1

2008-11-28 10:31:08, Info                  CBS    Shtd: progress thread terminating.  hr: 0x0

2008-11-28 10:31:08, Info                  CBS    Shtd: progress thread terminated normally

2008-11-28 10:31:08, Info                  CBS    Shtd: Shutdown processing complete.

 

This is an instance of a shutdown logging:

 

2008-11-28 10:31:08, Info                  CBS    Restored system sleep block state: 0x80000000

2008-11-28 10:33:02, Info                  CBS    Loaded Servicing Stack v6.0.6001.18000 with Core: C:\Windows\winsxs\x86_microsoft-windows-servicingstack_31bf3856ad364e35_6.0.6001.18000_none_095f6148c74a7a64\cbscore.dll

2008-11-28 10:33:03, Info                  CSI    00000001@2008/11/28:09:33:03.155 WcpInitialize (wcp.dll version 0.0.0.5) called (stack @0x73db8504 @0x742e8439 @0x742c62a3 @0x7b1392 @0x7b1ed4 @0x7b17cb)

2008-11-28 10:33:03, Info                  CSI    00000002@2008/11/28:09:33:03.364 WcpInitialize (wcp.dll version 0.0.0.5) called (stack @0x73db8504 @0x7431e615 @0x74300dec @0x7b1392 @0x7b1ed4 @0x7b17cb)

2008-11-28 10:33:03, Info                  CSI    00000003@2008/11/28:09:33:03.479 WcpInitialize (wcp.dll version 0.0.0.5) called (stack @0x73db8504 @0x74661a0d @0x74661794 @0x7b360b @0x7b2be3 @0x7b17cb)

2008-11-28 10:33:03, Info                  CBS    Blocked system sleep; prior state: 0x80000000

2008-11-28 10:33:03, Info                  CBS    Startup: Begin processing, registering for winlogon notification.

2008-11-28 10:33:03, Info                  CBS    Startup: current ExecuteState is 1

2008-11-28 10:33:03, Info                  CBS    Startup: Initializing driver operations queue.

2008-11-28 10:33:03, Info                  CBS    Startup: Initializing advanced operation queue.

2008-11-28 10:33:03, Info                  CSI    00000004 CSI Store 776752 (0x000bda30) initialized

2008-11-28 10:33:03, Info                  CBS    Startup: Waiting for SC autostart event

2008-11-28 10:33:37, Info                  CBS    Startup: SC autostart event signaled

2008-11-28 10:33:37, Info                  CBS    Startup: Processing advanced operation queue, startupPhase: 0

 

This logs the startup of the TrustedInstaller after restart:

 

2008-11-28 10:33:37, Info                  CSI    00000005 IAdvancedInstallerAwareStore_ResolvePendingTransactions (call 1) (flags = 0000000b, progress = NULL, phase = 0, pdwDisposition = @0x406f890

2008-11-28 10:33:49, Info                  CSI    00000006 IAdvancedInstallerAwareStore_ResolvePendingTransactions call 1 loaded 1 pending advanced installer operations

2008-11-28 10:33:49, Info                  CSI    00000007 Begin executing advanced installer phase 38 (0x00000026) index 0 (sequence 39)

 

You see that ResolvePendingTransactions is called.  If this succeeds, you will see an installation action like in the last line.  

 

The TrustedInstallerservice might be set back to manual in custom logoff, shutdown, startup, or logon scripts.  You should check all these scripts to see where the manual setting occurs.

 

The Start value of the TrustedInstallercan also be changed by Group Policy. The path of the policy is as follows:

 

Computer Configuration\Windows Settings\Security Settings\System Services\Windows Modules Installer

 

This policy should never be activated.

 

Note This policy is a domain policy.


Please also note that setting the policy is recommended by the Security Compliance Manager


http://technet.microsoft.com/en-us/library/cc677002.aspx 


this recommendation will be removed in the next version of SCM.

 

 

DISCLAIMER

MICROSOFT AND/OR ITS SUPPLIERS MAKE NO REPRESENTATIONS OR WARRANTIES ABOUT THE SUITABILITY, RELIABILITY OR ACCURACY OF THE INFORMATION CONTAINED IN THE DOCUMENTS AND RELATED GRAPHICS PUBLISHED ON THIS WEBSITE (THE “MATERIALS”) FOR ANY PURPOSE. THE MATERIALS MAY INCLUDE TECHNICAL INACCURACIES OR TYPOGRAPHICAL ERRORS AND MAY BE REVISED AT ANY TIME WITHOUT NOTICE.

TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, MICROSOFT AND/OR ITS SUPPLIERS DISCLAIM AND EXCLUDE ALL REPRESENTATIONS, WARRANTIES, AND CONDITIONS WHETHER EXPRESS, IMPLIED OR STATUTORY, INCLUDING BUT NOT LIMITED TO REPRESENTATIONS, WARRANTIES, OR CONDITIONS OF TITLE, NON INFRINGEMENT, SATISFACTORY CONDITION OR QUALITY, MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE, WITH RESPECT TO THE MATERIALS.
Note This is a "FAST PUBLISH" article created directly from within the Microsoft support organization. The information contained herein is provided as-is in response to emerging issues. As a result of the speed in making it available, the materials may include typographical errors and may be revised at any time without notice. See Terms of Use for other considerations.

Properties

Article ID: 968440 - Last Review: March 26, 2014 - Revision: 3.0
Applies to
  • Windows Vista Enterprise
Keywords: 
kbnomt kbrapidpub KB968440

Give Feedback

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com