Решение проблемы с обновлением КВ976569

Работая администратором не раз сталкиваюсь с проблемами обновлений Windows, когда по той или иной причине обновление не устанавливается. Особенно этим любят грешить обновления для платформы Microsoft .NET Framework. Каждый раз «вспоминать» как я решал проблему в предыдущий раз чуть надоедает. Решил оставлять такие шпаргалки у себя в блоге, тем более может кому-то еще пригодиться при поиске в гугле.
Проблема.
Итак проблема с обновлением:
«Обновление для платформы Microsoft .NET Framework 2.0 с пакетом обновления 2 в составе Windows Server 2003 и Windows XP для систем на базе процессоров x86 (KB976569)»:
После установки этого обновления Windows Update Agent нам говорит:
Установка завершена: следующее обновление было успешно установлено: Обновление для платформы Microsoft .NET Framework 2.0 с пакетом обновления 2 в составе Windows Server 2003 и Windows XP для систем на базе процессоров x86 (KB976569)
Дополнительные сведения можно найти в центре справки и поддержки, в «http://go.microsoft.com/fwlink/events.asp».
Через некоторое время, Windows загружает обновление и оповещает нас:
Все готово к установке: следующие обновления загружены и готовы к установке. Чтобы установить обновления, администратор должен войти в систему и следовать дополнительным указаниям по установке:
- Обновление для платформы Microsoft .NET Framework 2.0 с пакетом обновления 2 в составе Windows Server 2003 и Windows XP для систем на базе процессоров x86 (KB976569)
Дополнительные сведения можно найти в центре справки и поддержки, в «http://go.microsoft.com/fwlink/events.asp».
Мы с удивлением обнаруживаем что это опять то же обновление KB976569, которое мы только что установили. И так по кругу, сколько его не ставь, оно будет снова загружаться и говорить что готово к установке.
Решение.
Система считает апдейт установленным, если:
а) Установлен KB960043 и версия файла Mscorlib.dll равна или старше 2.0.50727.4413
б) НЕ установлен KB960043 и версия файла Mscorlib.dll равна или старше 2.0.50727.3607
Для того, чтоб решить проблему с этим обновлением и заткнуть Windows Update надо обновить mscorlib.dll до версии 4413 или выше. Тогда проблема решена.
Где достать этот файл? Он находиться все в том же обновлении KB976569, но Windows по какой-то причине не заменяет старый файл, на новый.
Потому:
- Мы идем по вот этой ссылке и качаем оттуда NDP20SP2-KB976569-x86.exe (10.9 МБ)
- После этого распаковываем скачанный файл с помощью архиватора 7zip.
- В распакованной папке мы находим файл «NDP20SP2-KB976569.msp» который также распаковываем с помощью 7zip.
- Снова заходим в очередную распакованную папку, находим файл «QFEGDR.cab» который тоже распаковываем. И уже там мы видим библиотеки, среди которых есть файл «FL_mscorlib_dll_____X86.3643236F_FC70_11D3_A536_0090278A1BB8″,
- Переименовываем файл в «mscorlib.dll» и копируем в папку «C:\WINNT\Microsoft.NET\Framework\v2.0.50727″.
После этого можно в последний раз установить обновление KB976569 и для верности перегрузить компьютер.
Проблема решена! =)