Процессы surrogate в Windows¶
COM Surrogate (полное имя — dllhost.exe /Processid:{...}) — служебный процесс в операционных системах Windows, выполняющий роль изолированного хоста для COM-объектов (Component Object Model). Процесс создаётся системой автоматически для размещения сторонних COM-длиннопроживающих объектов, прежде всего обработчиков превью файлов и метаданных, и не является вредоносным по определению.
¶Назначение
Основная функция COM Surrogate — изоляция сбоев. Многие расширения проводника Windows (например, обработчики превью для изображений, видео, документов Office) реализованы как COM-объекты. Если такой объект загружался бы непосредственно в процесс explorer.exe, любой сбой в его коде приводил бы к падению всего проводника. Механизм surrogate (заместителя) выносит выполнение таких объектов в отдельный процесс dllhost.exe, и при сбое завершается только этот процесс, а не оболочка Windows.
Команда запуска выглядит как dllhost.exe /Processid:{CLSID}, где CLSID — идентификатор конкретного COM-класса. В Windows 10 и 11 процесс может запускаться в варианте COM Surrogate (32-бит) и COM Surrogate (64-бит) одновременно.
¶Признаки нормальной работы
Повышенное потребление ресурсов процессом dllhost.exe само по себе не является признаком вредоносной активности. Типичные штатные ситуации:
- открытие папки с большим количеством файлов, особенно изображений или видео, — система генерирует превью;
- работа облачных клиентов (OneDrive, Яндекс.Диск), использующих COM-оболочки для интеграции с проводником;
- подключение внешних устройств (камеры, сканеры), чьи драйверы регистрируют COM-обработчики;
- установка программ, добавляющих пункты контекстного меню.
¶Как закрыть процесс
¶Через Диспетчер задач
Самый простой способ — открыть Диспетчер задач (Ctrl+Shift+Esc), найти «COM Surrogate» или dllhost.exe и завершить задачу. Однако процесс является системным: Windows перезапустит его автоматически при следующем обращении. Завершение процесса вручную допустимо как разовая мера, например при зависании, но не решает причину проблемы.
¶Через командную строку
Для завершения конкретного экземпляра используется команда:
`` taskkill /f /im dllhost.exe ``
Ключ /f принудительно завершает процесс. Если известен PID, можно ограничиться taskkill /f /PID <номер>.
¶Если процесс постоянно нагружает систему
Постоянно высокая загрузка CPU или памяти со стороны dllhost.exe обычно указывает на проблемный COM-обработчик. Действия по устранению:
- Проверка на вредоносное ПО. Вредоносные программы могут маскироваться под dllhost.exe, размещая исполняемый файл вне каталога
C:\Windows\System32. Проверяется путь запуска через Диспетчер задач (ПКМ → «Открыть расположение файла»). - Очистка папки кэша превью. Каталог
%LocalAppData%\Microsoft\Windows\Explorerсодержит файлыthumbcache_*.db. Их удаление сбрасывает кэш превью и устраняет многие проблемы с зависанием. - Отключение обработчиков превью. В редакторе реестра в ветке
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blockedможно заблокировать конкретные расширения, вызывающие сбои. - Проверка целостности системных файлов. Команда
sfc /scannowвосстанавливает повреждённые компоненты Windows, включая dllhost.exe. - Отключение ненужных контекстных меню. Расширения проводника сторонних программ (облачные клиенты, архиваторы, антивирусы) часто становятся источником проблем — их можно отключить через «Параметры» → «Приложения» → «Дополнительные компоненты» или утилиты Autoruns от Microsoft.
¶Через реестр — отключение автозагрузки расширений
Проблемные COM-объекты можно отключить, добавив их CLSID в ключ:
`` HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Shell Extensions\Blocked ``
значением типа REG_SZ с пустым содержимым. После перезагрузки Windows перестанет загружать указанный обработчик в COM Surrogate.
¶Безопасность
Наличие процесса dllhost.exe в списке задач — норма для Windows. Отсутствие процесса при этом может указывать на вмешательство стороннего ПО. Подмена dllhost.exe вредоносной программой — известная техника маскировки; для проверки рекомендуется использовать штатный «Защитник Windows» или сторонние антивирусные средства.
Источники:
- Microsoft Learn — документация по COM Surrogate и dllhost.exe
- Microsoft Sysinternals — описание утилиты Autoruns
- База знаний Microsoft Support — работа с Диспетчером задач Windows
