Що таке COM Surrogate (dllhost.exe) і чому він працює на моєму комп'ютері?
Якщо ви дивитеся у вашому диспетчері завдань, є хороший шанс, що ви побачите один або кілька процесів "COM Surrogate", запущених на ПК з Windows. Ці процеси мають назву файлу “dllhost.exe” і є частиною операційної системи Windows. Ви побачите їх у Windows 10, Windows 8, Windows 7 і навіть більш ранніх версіях Windows.
Ця стаття є частиною нашої нинішньої серії, в якій пояснюються різні процеси, знайдені в диспетчері завдань, такі як Runtime Broker, svchost.exe, dwm.exe, ctfmon.exe, rundll32.exe, Adobe_Updater.exe та багато інших. Не знаєте, що це за послуги? Краще почати читати!
Що таке сурогат COM (dllhost.exe)?
COM - це компонентна об'єктна модель. Це інтерфейс, запроваджений корпорацією Microsoft ще в 1993 році, що дозволяє розробникам створювати "COM-об'єкти", використовуючи різні мови програмування. По суті, ці об'єкти COM підключаються до інших додатків і розширюються.
Наприклад, менеджер файлів Windows використовує об'єкти COM для створення ескізів зображень та інших файлів під час відкриття папки. Об'єкт COM обробляє зображення, відео та інші файли для створення мініатюр. Це дозволяє, наприклад, розширювати файловий провідник з підтримкою нових відеокодеків.
Однак це може призвести до проблем. Якщо об'єкт COM аварійно завершується, він припинить процес хосту. З одного боку, ці об'єкти, що генерують мініатюри, були спільними для збою і зняли з себе весь процес Windows Explorer.
Щоб виправити цю проблему, Microsoft створила процес Сурогату COM. Процес COM Surrogate запускає об'єкт COM поза межами початкового процесу, який його запитував. Якщо об'єкт COM аварійно завершується, він зніме тільки процес Сурогату COM, і початковий процес хосту не припиниться. Наприклад, Windows Explorer (тепер відомий як File Explorer) запускає процес Surrogate COM, коли він повинен створити мініатюрні зображення. Процес COM Surrogate розміщує COM-об'єкт, який виконує роботу. Якщо об'єкт COM аварійно завершується, тільки COM Surrogate виходить з ладу, і оригінальний процес File Explorer продовжуватиметься на автоперевезеннях.
Іншими словами, як повідомляє офіційний блог Microsoft The Old New Thing, “Сурогатом COM є Я не відчуваю себе добре в цьому коді, тому я збираюся попросити COM розмістити його в іншому процесі. Таким чином, якщо він зірветься, то це замість мене припиняє процес COM Surrogate процесу ”.
І, як ви вже здогадалися, COM-сурогат називається "dllhost.exe", тому що COM-об'єкти, які він містить, є .dll-файлами.
Як я можу повідомити, який об'єкт COM є сурогатом COM?
Стандартний диспетчер завдань Windows не дає вам більше інформації про те, який COM-об'єкт або DLL-файл хостінг процесу COM Surrogate. Якщо ви хочете побачити цю інформацію, рекомендуємо інструмент Microsoft Explorer. Завантажте його, і ви можете просто перетягнути процес dllhost.exe в Process Explorer, щоб побачити, який COM-об'єкт або DLL-файл хостинг.
Як ми бачимо на скріншоті нижче, цей процес dllhost.exe розміщує об'єкт CortanaMapiHelper.dll..
Чи можу я вимкнути його?
Ви не можете відключити процес COM Surrogate, оскільки він є необхідною частиною Windows. Це дійсно просто контейнерний процес, який використовується для запуску COM-об'єктів, які інші процеси хочуть запустити. Наприклад, Провідник Windows (або Провідник файлів) регулярно створює процес Сурогату COM для створення мініатюр під час відкриття папки. Інші програми, які ви використовуєте, також можуть створювати власні процеси COM Surrogate. Всі процеси dllhost.exe у вашій системі були запущені іншою програмою, щоб зробити те, що програма хоче зробити.
Це вірус?
Процес COM Surrogate сам по собі не є вірусом і є звичайною частиною Windows. Проте його можна використовувати зловмисними програмами. Наприклад, зловмисне програмне забезпечення Trojan.Poweliks використовує процеси dllhost.exe, щоб виконати свою брудну роботу. Якщо ви бачите велику кількість запущених процесів dllhost.exe і вони використовують помітну кількість процесора, це може вказувати на те, що процеси COM Surrogate зловживають вірусом чи іншими шкідливими програмами.
Якщо ви стурбовані тим, що зловмисне програмне забезпечення зловживає процесом dllhost.exe або COM Surrogate, вам слід запустити сканування з потрібною антивірусною програмою, щоб знайти та видалити зловмисне програмне забезпечення, яке є в системі. Якщо у вашій антивірусній програмі вказано, що все нормально, але ви підозрілі, виконайте сканування з іншим антивірусним засобом, щоб отримати другу думку.