Thursday, August 28, 2008

The Case of Windows 2003 SP2 Installation Failure

MS announces EOS of Windows 2003 Server with SP1 April 2009. So it is about time for the company I work for start to plan for an upgrade to SP2. We have around 1300 servers to be patched with combination of x86 and x64. I was part of the early involvement team to drive for this change and working with our engineering team for proliferation world wide.

We encountered this same exact error where SP2 failed to install with a very specific error code from update.exe

“Service Pack 2 Setup canceled.
Update.exe extended error code = 0xf00d
Update.exe return code was masked to 0x643 for MSI custom action compliance.”


Screen thru the svcpack.log, setupapi.log & spuninst.log and MS KB searches, this could due to the permission or antivirus with online scan for I/O.


We invoked the upgrade process using the local administrator account and that pretty much ruled out that it was due to permissions. But to be sure we checked on the local security policy on what exactly local administrator can and can’t do (with policy pushed from AD).

After that we reverted the change by restoring the mirrored disk and try it from scratch again. This time we disabled the VirusScan Enterprise 8x “On Access Scan” feature and proceed with the SP2 setup again and the update.exe error didn't went away but this time it reported more error with 0x490 on possibly all the inf files under the C:Windows\inf directory.


Below is part of the svcpack.log file error messages in C:\Windows

SetupVerifyInfFile failed with error 0x490 for c:\windows\inf\netwlbsm.inf of device ROOT\MS_WLBSMP\0000
SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\RDPDR\0000
SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\RDP_KBD\0000
SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\RDP_MOU\0000
SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\SYSTEM\0000
SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\SYSTEM\0001
SetupVerifyInfFile failed with error 0x490 for c:\windows\inf\machine.inf of device ROOT\SYSTEM\0001 SetupVerifyInfFile failed with error 0x490 for machine.inf of device ROOT\SYSTEM\0002
SetupVerifyInfFile failed with error 0x490 for disk.inf of device SCSI\DISK&VEN_HP&PROD_LOGICAL_VOLUME&REV_2.58\5&12B8725B&0&040
SetupVerifyInfFile failed with error 0x490 for disk.inf of device SCSI\DISK&VEN_HP&PROD_LOGICAL_VOLUME&REV_2.76\5&12B8725B&0&040

This time the error message tell some informative hint where update.exe unable to verify the inf files and a quick search on the log enteis from Process Monitor suggested that licdll.dll is throwing the problem. KB912354 from MS outlined that this can be easily fixed by reregister the problematic dll by regsvr32 licdll.dll but this is not enough to fix the problem we faced in this server.

We proceeded to download the KB912354 and from MS Premier site to replace the dll and then performed the following steps to recovered the server and get SP2 installed :-

  1. Patch KB912354 & reboot the system
  2. Net stop cryptsvc
  3. ren C:\Windows\System32\Catroot2 oldcatroot2
  4. Net start cryptsvc
  5. Reinstall SP2



1 comment:

Brenton Crosby said...

Thanks for your article. What a life saver! Found a server that had slipped through the gaps and had to update to SP2 during the day (luckily had a redundant server). Was getting the errors you mentioned and had found other articles saying to regsvr32 licdll.dll but this didn't work for me. The 2nd part did though, so thanks a million!