Ошибка 0x800F0805 в Windows 10/11 — обновления и компоненты не устанавливаются (2026)

Ошибка 0x800F0805 всплывает, когда Windows не может поставить обновление или включить компонент (например, .NET 3.5). Для новичка это выглядит как тупик: «что-то пошло не так», и всё. На деле проблема почти всегда лечится: нужно привести в порядок Центр обновления и хранилище компонентов. Ниже понятный план, который реально помогает в большинстве случаев.
Коротко: что проверить сразу
- Перезагрузите ПК один раз нормально (не «сон») и попробуйте ещё раз.
- Проверьте свободное место на диске C: желательно 10–15 ГБ и больше.
- Временно отключите сторонний антивирус (после установки включите обратно).
- Проверьте дату/время: «Параметры» → «Время и язык» → «Установить автоматически».
- Если ошибка при .NET 3.5, не ставьте «сборки». Мы включим компонент правильно.
1) Почему появляется 0x800F0805 простыми словами
Эта ошибка означает, что Windows не смогла применить пакет обновления или включить компонент из-за проблем с системными файлами. Чаще всего виновато одно из трёх:
- сломался кеш Центра обновления (скачалось не до конца, зависла база, «кривые» временные файлы);
- повреждено хранилище компонентов WinSxS (Windows берёт оттуда файлы для обновлений и функций);
- мешают драйверы/твики/антивирус или был «жёсткий» сбой питания.
Мы пройдёмся по всем пунктам. Делайте шаги по порядку и не перескакивайте.
2) Сброс Центра обновления (безопасно)
Это самый частый фикс, и он не удаляет ваши файлы. Мы останавливаем службы обновлений, чистим кеш и запускаем всё обратно.
Командная строка (Администратор) - выполнять по одной:
net stop wuauserv
net stop bits
net stop cryptsvc
net stop msiserver
ren %systemroot%\SoftwareDistribution SoftwareDistribution.old
ren %systemroot%\System32\catroot2 catroot2.old
net start msiserver
net start cryptsvc
net start bits
net start wuauserv
После выполнения перезагрузите компьютер и попробуйте: «Параметры» → «Центр обновления Windows» → «Проверить обновления».
Важно: папки SoftwareDistribution.old и catroot2.old можно удалить позже, когда убедитесь, что обновления ставятся.
3) Восстанавливаем системные файлы: SFC и DISM
Если сброс не помог, почти наверняка повреждены компоненты. Сначала запускаем проверку системных файлов, потом восстановление хранилища компонентов.
Командная строка (Администратор) - выполнить одну команду и дождаться окончания:
sfc /scannow
Когда SFC закончит, не закрывайте окно.
Командная строка (Администратор) - выполнять по одной:
DISM /Online /Cleanup-Image /CheckHealth
DISM /Online /Cleanup-Image /ScanHealth
DISM /Online /Cleanup-Image /RestoreHealth
Если на RestoreHealth появится «Источник не найден», значит Windows не может взять нужные файлы. Тогда используем установочный образ Windows как источник.
4) DISM: «Источник не найден» - как дать правильный источник
Решение простое: берём ISO той же версии Windows (10 или 11), монтируем и указываем путь.
- Скачайте ISO Windows с официального сайта Microsoft.
- Откройте ISO двойным кликом, появится виртуальный диск (например,
D:). - Подставьте свою букву в команду ниже.
Командная строка (Администратор) - выполнить одной строкой:
DISM /Online /Cleanup-Image /RestoreHealth /Source:wim:D:\sources\install.wim:1 /LimitAccess
Если вместо install.wim там install.esd, замените wim на esd:
Командная строка (Администратор) - выполнить одной строкой:
DISM /Online /Cleanup-Image /RestoreHealth /Source:esd:D:\sources\install.esd:1 /LimitAccess
После успешного DISM перезагрузите ПК и проверьте обновления.
5) Если ошибка при установке .NET 3.5: включаем правильно
.NET 3.5 встроен в Windows как компонент, его нужно включить.
- «Панель управления» → «Программы» → «Включение или отключение компонентов Windows».
- Поставьте галочку на .NET Framework 3.5 и нажмите OK.
- Если попросит скачать компоненты, соглашайтесь.
Если не получается, включаем .NET из ISO:
Командная строка (Администратор) - выполнить одну команду (ISO смонтирован, букву поменяйте):
DISM /Online /Enable-Feature /FeatureName:NetFx3 /All /LimitAccess /Source:D:\sources\sxs
6) Обновление не ставится, но система уже «починена»: ставим KB вручную
Иногда Windows Update уже работает, но одно конкретное обновление упрямится. Тогда можно поставить его вручную.
- В «Истории обновлений» найдите номер вида KB1234567.
- Скачайте пакет в каталоге Microsoft Update под вашу систему (x64/ARM64).
- Запустите
.msuдвойным кликом и дождитесь завершения.
7) Диагностика: что посмотреть, если ничего не помогает
Полезно открыть журнал CBS. Читать его полностью не нужно, но он пригодится, если будете просить помощи.
PowerShell (Администратор) - выполнить одну команду, она откроет папку:
explorer.exe $env:windir\Logs\CBS
И ещё быстрые подсказки:
Командная строка (Администратор) - выполнять по одной:
winver
dism /online /get-packages /format:table
wevtutil qe System /q:"*[System[(EventID=20 or EventID=25 or EventID=41)]]" /f:text /c:15
Если видите частые EventID 41 (Kernel-Power), сначала решите проблему с внезапными отключениями питания, иначе ошибки обновлений будут возвращаться.
FAQ
После всех шагов обновления пошли, но долго «висит» на 0% или 20%.
Это нормально для крупных пакетов. Дайте 30–60 минут, особенно на HDD. Главное: не выключайте питание в процессе.
Я боюсь командной строки. Есть вариант совсем без команд?
Можно попробовать «Средство устранения неполадок» (Параметры → Система → Устранение неполадок), но 0x800F0805 чаще лечится именно сбросом WU и DISM/SFC. Команды выше безопасны, если вводить их как написано.
Это вирус?
Обычно нет. Но если в системе стояли «оптимизаторы» и твики, которые отключают службы обновлений, сначала удалите их и проверьте ПК антивирусом.