Page 1 of 1

[solved] KB2686509 for WinXP x86

PostPosted: 10.07.2012, 13:31
by Aldegundis
It seems that WSUS Offline Update 7.4 downloads wrong versions of the KB2686509 security fix for Windows XP (x86) for (at least) ENU and NLD languages.

I had trouble getting that fix installed on one of my WinXP Pro systems (using WOU 7.4) and searching online forums told me I wasn't the only one. Unfortunately, none of the suggested solutions worked for me.

Finally, I resorted to Windows Update (WU) to see if that would make any difference and, surprisingly, it did!
So I decided to compare both downloads and, apparently, they were different.

WOU 7.4 yields the following download (for ENU):

"windowsxp-kb2686509-x86-enu_c7e2d5fc238a1566e5d7c5974e6ba5d3130c9c82.exe"

WU uses the following download:

"windowsxp-kb2686509-x86-enu_fdbb0ff8820e54be0eefc9e4e47ca4f0116d84a6.exe"
(coming from "http://au.download.windowsupdate.com/msdownload/update/software/secu/2012/04/")

Looking inside and comparing both packages (by executing them with a "/?" command parameter), the one from WOU 7.4 seems to be targeted at Windows XP Embedded.

Apart from a differently named DLL ("kblCheckerE.dll" vs. "kblChecker.dll"), two of the INF files ("update_SP3GDR.inf" and "update_SP3QFE.inf") in the WOU 7.4 download contain extra sections that point to WinXP Embedded:

[EmbNTPrereq.Section]
PresentOp = CheckReg, HKLM, "SYSTEM\CurrentControlSet\Control\ProductOptions", "ProductSuite", 0x00010000
EqualOp = CheckReg, HKLM, "SYSTEM\CurrentControlSet\Control\ProductOptions", "ProductSuite", 0x00010000, "==", "EmbeddedNT"


[KblPrerequisite.Section]
AndOp = EmbNTPrereq.Section
AndOp = Prereq.IsMachineSafe.Section


The NLD version (and probably other language versions too) of the KB2686509 fix from WOU 7.4 has the same problem.

FYI, I have another WinXP Pro system here where the KBKB2686509 fix installed without problem a couple of weeks ago using WOU 7.3.2...

Thanks in advance for looking into this issue... :D

Re: KB2686509 for WinXP x86

PostPosted: 10.07.2012, 14:24
by harry
Welcome Aldegundis!

Thanks for analysis :)

from ...\doc\history.txt:
Code: Select all
Version 7.4 -- 05.07.12
...
- Fix: For Windows XP (x86) systems, kb2686509 was downloaded twice (Thanks to Th. Baisch)
...
This change seems to be wrong :(

Quick patch: delete the line
Code: Select all
2012/04/windowsxp-kb2686509
from ...\exclude\ExcludeList-wxp-x86.txt (at the end), or copy this file from version 7.3.2 into your repository.

Then re-run Updategenerator.exe.

Greetings,
harry

Re: KB2686509 for WinXP x86

PostPosted: 10.07.2012, 14:55
by Aldegundis
Thanks for the prompt reply, harry!

For those of you interested, the WinXP Embedded fix fails in the following manner (C:\Windows\KB2686509.log):

1.422: 2012/07/09 18:09:30.007 (local)
1.422: C:\15f4ba27b57543d7851e12463f72\update\update.exe (version 6.3.13.0)
1.432: DoInstallation: GetProcAddress(InitializeCustomizationDLL) Returned: 0x7f
1.432: Hotfix started with following command line: /norestart /nobackup
1.432: In Function GetReleaseSet, line 1240, RegQueryValueEx failed with error 0x2
1.442: CreateUserInterface: GetProcAddress for DefineInstallCustomUI failed: 0x7f
1.473: ProductSuite is Present
1.483: SYSTEM\CurrentControlSet\Control\ProductOptions\ProductSuite is Not Equal To Specified Value
1.483: Second Condition in EmbNTPrereq.Section Failed
1.483: Condition Check for Line 1 of PreRequisite returned FALSE
1.483: ReadStringFromInf: UpdSpGetLineText failed: 0xe0000102
1.483: KB2686509 Setup encountered an error: Setup cannot continue because one or more prerequisites required to install KB2686509 failed. For More details check the Log File c:\windows\KB2686509.log
1.493: ReadStringFromInf: UpdSpGetLineText failed: 0xe0000102
1.493: Setup cannot continue because one or more prerequisites required to install KB2686509 failed. For More details check the Log File c:\windows\KB2686509.log
3057.497: Message displayed to the user: Setup cannot continue because one or more prerequisites required to install KB2686509 failed. For More details check the Log File c:\windows\KB2686509.log
3057.497: User Input: OK
3057.497: Update.exe extended error code = 0xf0f4
3057.497: Update.exe return code was masked to 0x643 for MSI custom action compliance.


This is different from mostly all other reported failure symptoms for KB2686509 on Microsoft's forums...

Re: KB2686509 for WinXP x86

PostPosted: 10.07.2012, 18:22
by aker
@WSUSUpdateAdmin

Da wird wohl das falsche Update ausgeschlossen, wie müsste denn der korrekte Eintrag für die ExcludeList heißen?

Viele Grüsse

Re: KB2686509 for WinXP x86

PostPosted: 10.07.2012, 19:38
by harry
Laut meiner ...\log\download.log:
Code: Select all
2012-05-25 14:26:05 URL:http://download.windowsupdate.com/msdownload/update/software/secu/2012/05/windowsxp-kb2686509-x86-deu_a4f62ec099274bfdf9d111a0ee65c32cb06ee9f2.exe [506624/506624] -> "../client/wxp/deu/windowsxp-kb2686509-x86-deu_a4f62ec099274bfdf9d111a0ee65c32cb06ee9f2.exe" [1]
sollte das Ausschlusskriterium
Code: Select all
2012/05/windowsxp-kb2686509
sein; aber das letzte Wort hat natürlich Torsten.

Gruß

Re: KB2686509 for WinXP x86

PostPosted: 10.07.2012, 19:40
by Denniss
aker wrote:@WSUSUpdateAdmin

Da wird wohl das falsche Update ausgeschlossen, wie müsste denn der korrekte Eintrag für die ExcludeList heißen?
Keines der Beiden ausschließen da eines wohl für XP und das Andere für XP embedded.

Re: KB2686509 for WinXP x86

PostPosted: 11.07.2012, 01:14
by boco
Build #374 behebt das Malheur.