Problemen na DLL-lek-patch KB2264107 en CWDIllegalInDllSearch=FFFFFFFF
25-08-2010,10:00 doorBitwiper
Na het installeren van de patches genoemd in http://support.microsoft.com/kb/2264107 en het zetten van de bijbehorende registerwaarde CWDIllegalInDllSearch op 0xFFFFFFFF, werken Outlook 2002 (Office XP) en Outlook 2003 niet meer (voor details over die patch en genoemde registerwaarde: zie mijn bijdragen onder het artikel in http://www.security.nl/artikel/34244/1/Microsoft_waarschuwt_voor_omvangrijk_DLL-lek.html).

Het lijkt er op dat de Microsoft Outlook programmeurs tijdelijk (of voor de rest van de sessie, dat weet ik niet) de "current working directory" op een pad naar een stel extra benodigde DLL's zetten en vervolgens die DLL's (zonder een absoluut pad te specificeren) trachten in te lezen. En dat is nu exact wat de patch verhindert. Gelukkig is er een fix:

(1) login als admin (d.w.z. een account dat lid is van de Administrators groep, bijv. Administrator)

(2) start verkenner (Engels: Explorer) en ga naar de volgende map:
C:\Program Files\Common Files\System\Mapi
Als je dat soort mappen niet ziet zul je de instellingen van verkenner zo moeten aanpassen dat je systeembestanden en systeemmappen kunt zien (als alternatief kun je ook een andere filemanager gebruiken zoals Total Commander).

(3) Als het goed is zul je een submap zien met een getal als naam. Bij mijn Engelstalige Windows versie is dat 1033 waarmee het volledige pad voor een Engelse XP versie luidt:
C:\Program Files\Common Files\System\Mapi\1033

(4) Verifieer dat daarin ten minste de volgende bestanden staan: MSMAPI32.DLL, OUTEX.DLL en EMSMDB32.DLL. Op mijn systeem kon Outlook 2002 die bestanden niet meer vinden na de patch (Outlook waarschuwde bij opstarten over die laatste 2, de eerste heb ik met een los tooltje achterhaald).

N.b. Als je wel Outlook op je PC hebt en deze niet meer wil starten na de patch, maar niet die bestanden kunt vinden, maak dan svp hieronder een bijdrage en beschrijf daarbij welke Windows versie (+ laatste ServicePack) en de taal daarvan die je gebruikt, jouw Outlook versie en taal, en wat je wel aan submappen ziet. Verdergaan heeft dan geen zin.

(5) Als je die map met bestanden gevonden hebt: start regedit. Ga naar de key:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\App Paths\OUTLOOK.EXE

(5) open de registerwaarde genaamd Path en plak achter de bestaande tekst:
;C:\Program Files\Common Files\System\Mapi\1033\

BELANGRIJK: pas die 1033 aan naar de map die je gevonden hebt!
Op mijn systeem met Engelstalige Office 2002 luidt de volledige waarde van Path als volgt:
C:\Program Files\Microsoft Office\Office10\;C:\Program Files\Common Files\System\Mapi\1033

(6) Sluit regedit. Mocht er nog een foutmelding van Outlook op je scherm staan, sluit die dan.

Outlook zou vervolgens weer wel moeten werken (dus ook met patch KB2264107 geinstalleerd en de registerwaarde CWDIllegalInDllSearch gezet op 0xFFFFFFFF.

Mocht ik tegen meer problemen aanlopen dan zal ik deze bijdrage uitbreiden of hieronder commentaar-bijdragen toevoegen.