0x80004005
Средняя важность — нужна диагностика

Ошибка 0x80004005 — CMS и хостинг

Что это значит

Код 0x80004005 — это общая ошибка COM (Component Object Model) в Windows, означающая «Неопределённая ошибка» (Unspecified error). В контексте CMS и хостинга она часто возникает при попытке веб-приложения выполнить операцию через COM-интерфейс (например, при работе с IIS, Microsoft Office или системными компонентами). Пользователь видит сообщение об ошибке на веб-странице или в логах приложения, обычно без дополнительных деталей. Система не может завершить запрошенное действие из-за внутреннего сбоя, отсутствия прав или неверных параметров.

Вероятные причины

  • Недостаточно разрешений у пула приложений IIS на доступ к COM-объекту
  • Отсутствие или повреждение необходимого COM-компонента (например, Microsoft Office Interop)
  • Конфликт 32- и 64-разрядных версий COM-объектов в IIS
  • Некорректные настройки DCOM (Distributed COM) на сервере
  • Попытка использования COM-объекта в среде без поддержки (например, в Azure App Service)
  • Повреждение реестра Windows, связанное с COM-регистрацией
  • Антивирус или брандмауэр блокирует создание COM-объекта
  • Утечка памяти или исчерпание ресурсов при многократном создании COM-объектов

Что делать — по порядку

  1. Проверьте права пула приложений IIS: убедитесь, что учётная запись пула имеет доступ к COM-объекту (через dcomcnfg).
  2. Убедитесь, что COM-компонент установлен и зарегистрирован (regsvr32 для DLL, /regserver для EXE).
  3. Включите 32-разрядные приложения в пуле IIS, если COM-объект 32-разрядный.
  4. Проверьте настройки DCOM: запустите dcomcnfg, найдите компонент, настройте разрешения для IUSR и NETWORK SERVICE.
  5. Если используется Office Interop, замените на альтернативу (например, Open XML SDK) — Office не поддерживается в серверных сценариях.
  6. Проверьте журналы событий Windows (Event Viewer) на наличие дополнительных ошибок COM.
  7. Временно отключите антивирус для теста, чтобы исключить блокировку.
  8. Перезапустите пул приложений и IIS (iisreset).

Нажимайте на пункты, чтобы отмечать выполненные.

Частые вопросы

Что означает ошибка 0x80004005 на сайте?

Это общая COM-ошибка. Чаще всего проблема в правах доступа к COM-объекту или его отсутствии.

Как исправить 0x80004005 в IIS?

Проверьте права пула приложений, включите 32-разрядные приложения, настройте DCOM-разрешения.

Может ли антивирус вызывать ошибку 0x80004005?

Да, антивирус может блокировать создание COM-объекта. Временно отключите его для проверки.

Ошибка 0x80004005 при использовании Microsoft Office на сервере

Microsoft не рекомендует использовать Office в серверных сценариях. Замените на Open XML SDK или другую библиотеку.

Почему ошибка 0x80004005 появляется только иногда?

Возможно, проблема с ресурсами (утечка памяти) или временным блокированием COM-объекта.

Источники

Где встречается

Windows Server (IIS 7+), веб-приложения на ASP.NET, PHP через COM, хостинг-панели (Plesk, cPanel) при интеграции с Windows-компонентами