Saturday, July 24, 2010

Unable to add new components in Windows 7 [Solved]

I wanted to add IIS on my asus laptop with Windows 7 Pro x64 but it keeps failing miserably. I cannot add any new component. It fails with the error :
  • French : Une erreur s'est produite. Certaines fonctionnalités n'ont pas été modifiées correctement.
  • English : An error has occurred. Not all of the features were successfully changed.
It is not linked to my tuning of windows 7 professionnal as I have enabled back again services, tasks, auto run registry keys and startup shortcuts.

I have also enabled again system restore for both C and D drives. Strangely, I had to temporarily rename the C drive to its original name (OS) to avoid strange errors when validating the new configuration.

I found on the net that the following command line could help :
fsutil resource setautoreset true C:\
But it hasn't fixed my problem.

Each attempt adds five Windows Error Reporting events in the Application events log like :
Récipient d’erreurs 660181886, type 5
Nom d’événement : CbsPackageServicingFailure2
Réponse : Non disponible
ID de CAB : 0

Signature du problème :
P1 : 6.1.7600.16385
P2 : Microsoft-Windows-Foundation-Package
P3 : 6.1.7600.16385
P4 : amd64
P5 : unknown
P6 : 80073701
P7 : Resolve
P8 : Installed
P9 : Installed
P10 : Windows Optional Component Manager

Fichiers joints :
C:\Windows\Logs\CBS\CbsPersist_20100719145300.cab
C:\Windows\Logs\CBS\CbsPersist_20100720135637.cab
C:\Windows\Logs\CBS\CbsPersist_20100724175736.cab
C:\Windows\Logs\CBS\CbsPersist_20100724190432.cab
C:\Windows\Logs\CBS\CbsPersist_20100724202127.cab
C:\Windows\Logs\CBS\CBS.log
C:\Windows\servicing\Sessions\Sessions.xml
C:\Windows\winsxs\poqexec.log
C:\Windows\inf\setupapi.dev.log

Ces fichiers sont peut-être disponibles ici :
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\Critical_6.1.7600.16385_12b152e0507da7dbac253e5d6773b3d790739076_02e58056

Symbole d’analyse :
Nouvelle recherche de la solution : 0
ID de rapport : 48d9af65-9764-11df-89ff-9b9906ca6306
Statut du rapport : 0
or
Récipient d’erreurs 1105700561, type 5
Nom d’événement : WindowsWcpOtherFailure3
Réponse : Non disponible
ID de CAB : 0

Signature du problème :
P1 : 6.1.7600
P2 : base\wcp\componentstore\csd_locking.cpp
P3 : CCSDirectTransaction::LockComponent
P4 : 321
P5 : c015000c
P6 : 0x05f3852f
P7 :
P8 :
P9 :
P10 :

Fichiers joints :
C:\Windows\Logs\CBS\CbsPersist_20100719145300.cab
C:\Windows\Logs\CBS\CbsPersist_20100720135637.cab
C:\Windows\Logs\CBS\CbsPersist_20100724175736.cab
C:\Windows\Logs\CBS\CbsPersist_20100724190432.cab
C:\Windows\Logs\CBS\CbsPersist_20100724202127.cab
C:\Windows\Logs\CBS\CBS.log
C:\Windows\servicing\Sessions\Sessions.xml
C:\Windows\winsxs\poqexec.log
C:\Windows\System32\LogFiles\Scm\SCM.EVM
C:\Windows\Logs\CBS\FilterList.log
C:\Windows\Temp\WER6622.tmp.hdmp
C:\Windows\Temp\WER66ED.tmp.mdmp

Ces fichiers sont peut-être disponibles ici :
C:\ProgramData\Microsoft\Windows\WER\ReportArchive\Critical_6.1.7600_61fd7aaf67694893e820b3fd1752ddf4faf4e84_06197a3e

Symbole d’analyse :
Nouvelle recherche de la solution : 0
ID de rapport : 48d9af64-9764-11df-89ff-9b9906ca6306
Statut du rapport : 0
Extract from C:\Windows\Logs\CBS\CBS.log (with telnet client component) :
Info    CBS    Perf: Resolve chain started.
Info CSI 0000000b@2010/7/24:20:44:42.885 CSI Transaction @0x69300e0 initialized for deployment engine {d16d444c-56d8-11d5-882d-0080c847b195} with flags 00000002 and client id [101]"TI1.30092144_4010074112:2/Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385"
Info CBS Exec: Resolving Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient
Info CBS Exec: Resolving component from existing package; passing NULL manifest path to PinDeployment and hoping things haven't been scavenged.
Info CBS Exec: Resolving Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient, PinDeployment: amd64_microsoft-windows-t..oyment-languagepack_31bf3856ad364e35_6.1.7600.16385_de-de_c3c58e4b573d9172
Error CSI 0000000c@2010/7/24:20:44:42.913 (F) d:\w7rtm\base\wcp\componentstore\csd_locking.cpp(321): Error STATUS_SXS_ASSEMBLY_MISSING originated in function CCSDirectTransaction::LockComponent expression: (null) [gle=0x80004005]
Error CSI 0000000d (F) STATUS_SXS_ASSEMBLY_MISSING #238072# from CCSDirectTransaction::OperateEnding at index 0 of 1 operations, disposition 2[gle=0xd015000c]
Error CSI 0000000e (F) HRESULT_FROM_WIN32(ERROR_SXS_ASSEMBLY_MISSING) #237957# from Windows::ServicingAPI::CCSITransaction::ICSITransaction_PinDeployment(Flags = 0, a = Microsoft-Windows-Telnet-Client-Deployment-LanguagePack, Version = 6.1.7600.16385, pA = PROCESSOR_ARCHITECTURE_AMD64 (9), Culture = [l:10{5}]"de-DE", VersionScope = 1 nonSxS, PublicKeyToken = {l:8 b:31bf3856ad364e35}, Type neutral, TypeName neutral, PublicKey neutral, cb = (null), s = (null), rid = [96]"Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385.TelnetClient", rah = (null), manpath = (null), catpath = (null), ed = 0, disp = 0)[gle=0x80073701]
Info CBS Failed to pin deployment while resolving Update: TelnetClient from file: (null) [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Failed to resolve item[0] in Package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385, Update: TelnetClient [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Failed to resolve execution update. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to resolve execution package: Microsoft-Windows-Telnet-Client-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CSI 0000000f@2010/7/24:20:44:45.042 CSI Transaction @0x69300e0 destroyed
Info CBS Perf: Resolve chain complete.
Info CBS Failed to resolve execution chain. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to process single phase execution. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS WER: Generating failure report for package: Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385, status: 0x80073701, failure source: Resolve, start state: Installed, target state: Installed, client id: Windows Optional Component Manager
Info CBS Failed to query DisableWerReporting flag. Assuming not set... [HRESULT = 0x80070002 - ERROR_FILE_NOT_FOUND]
Info CBS Failed to add %windir%\winsxs\pending.xml to WER report because it is missing. Continuing without it...
Info CBS Failed to add %windir%\winsxs\pending.xml.bad to WER report because it is missing. Continuing without it...
Info CBS Reboot mark refs: 0
Info CBS Enabling LKG boot option
Info CBS Exec: End: nested restore point - complete.
Info CBS Restored system sleep block state: 0x80000000
Info CBS Client aborted the install. [HRESULT = 0x800f0821 - CBS_E_ABORT]
Info CBS Exec: Processing complete. Session: 30092144_4010074112, Package: Microsoft-Windows-Foundation-Package~31bf3856ad364e35~amd64~~6.1.7600.16385 [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Error CBS Failed to perform operation. [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
Info CBS Session: 30092144_4010074112 finalized. Reboot required: no [HRESULT = 0x80073701 - ERROR_SXS_ASSEMBLY_MISSING]
A few notes :
  • STATUS_SXS_ASSEMBLY_MISSING : Culture is wrong ! Why the hell is it looking for German (de-DE) packages on my French laptop ?
  • The log tells Reboot required: no but it asks for reboot anyway (even if nothing is installed!)
I have downloaded System Update Readiness Tool (100 MB) even if the ERROR_SXS_ASSEMBLY_MISSING error might not be fixed by this tool (not listed in the error table). After 25 min execution, no error were detected in C:\Windows\Logs\CBS\CheckSUR.log.

Sytem File Checker tool (sfc /verifyonly) found nothing (aucune violation d'intégrité).

Google search :Running the package manager by hand is a bit more explicit (I use the same name as in my French graphical user interface):
pkgmgr /iu:"Client Telnet"
Gestionnaire de package Windows
Echec de l'opération avec 0x80073701
L'assembly référencé n'a pas pu être trouvé.

Well this is the ERROR_SXS_ASSEMBLY_MISSING error found earlier in Component Based Servicing log (CBS.log).

After some research with Process Monitor, it seems that TrustedInstaller.exe fails to open the registry key HKLM\COMPONENTS\DerivedData\Components\amd64_microsoft-windows-s..oyment-languagepack_31bf3856ad364e35_6.1.7600.16385_de-de_08eb0375be2e567f. I can confirm this with regedit : the de_de key is missing, I only got these versions : el-gr, en-us, es-es, fr-fr, he-il, it-it, nl-nl, pt-pt and zh-tw.

Note: HKLM\COMPONENTS might be missing on Windows 7. In this case, it would be generated completely if you launch Windows package manager UI.

These keys matches files under C:\Windows\winsxs. I cannot find the de-de files in this folder. This is what Andre Ziegler told me in the forums. He also confirmed that I need to reinstall Windows 7 (again :( ).

If I look into C:\Windows\System32\catroot\{F750E6C3-38EE-11D1-85E5-00C04FC295EE}, I can find all language files, and the German file in particular (like Microsoft-Windows-Shell-InboxGames-Package~31bf3856ad364e35~amd64~de-DE~6.1.7600.16385).

As adviced in Win7 Inside Out - WinSxS, I have launched language packs setup application lpksetup but German pack is not installed (as expected : manifests are missing).

Note: WinSxS = Windows Side by Side assemblies.

Thanks to mydigitallife, I have downloaded German MUI pack : windows6.1-kb972813-x64-de-de_399ac15b2d55fd5dea0770d98825d7e75f4ad533.exe. To install this pack :
  • Run pack exe to extract lp.cab file
  • Download vistalizator
  • Choose add language
  • Select lp.cab file
  • Validate language installation
  • Make German the new display language : no !
It is now possible to add new features. Victory !

4 comments:

Pierre-Henri said...

Thank you so much ! I had the very same problem except the missing language was italian.

You saved me hours of reinstallation.

Phil said...

Imagine somebody telling you :

- "You can't uninstall media player ? There's an error message ? ok, you have to add a foreign language pack and this problem will be solved"

- "SURE !" you will respond, thinking he's crazy.

But he is not, i didn't believe my eyes when i finally saw the successfull uninstall of media player after adding the English language pack on my french laptop.

Thanks a thousand times DED, you also saved me hours of reinstallation.

Fouad said...

You are my hero, Thanks a lot this problem was pending in my computer for more than a month. thanks another time.

Evito Didirlo said...

How da fuck u now that?
U are a genius.
That solved all the problems.
Thank you very much