Какво представлява „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 Surrogate (dllhost.exe)?

COM означава Component Object Model. Това е интерфейс, въведен от Microsoft през 1993 г., който позволява на разработчиците да създават “COM обекти”, използвайки разнообразие от различни програмни езици. По същество тези COM обекти се включват в други приложения и ги разширяват.

Например файловият мениджър на Windows използва COM обекти, за да създава миниатюрни изображения на изображения и други файлове, когато отваря папка. COM обектът обработва изображения, видеоклипове и други файлове, за да генерира миниатюри. Това позволява File Explorer да бъде разширен с поддръжка за нови видео кодеци, например.

Това обаче може да доведе до проблеми. Ако COM обект се срине, той ще свали хост процеса си. В един момент беше обичайно тези обекти, генериращи миниатюри, да се сриват и да свалят целия процес на Windows Explorer с тях.

За да реши този проблем, Microsoft създаде процеса COM Surrogate. Процесът COM Surrogate изпълнява COM обект извън първоначалния процес, който го е поискал. Ако COM обектът се срине, той само ще премахне COM сурогатния процес и оригиналният хостов процес няма да се срине. Например Windows Explorer (сега известен като File Explorer) стартира COM сурогатен процес, когато е необходимо да генерира миниатюрни изображения. Процесът COM Surrogate е домакин на COM обекта, който върши работата. Ако COM обектът се срине, само COM Surrogate се срине и оригиналният процес на File Explorer ще продължи да се превозва.

„С други думи“, както казва официалният блог на Microsoft The Old New Thing, „COM Surrogate е,  че не се чувствам добре с този код, така че ще помоля COM да го хоства в друг процес. По този начин, ако се срине, жертвеният процес COM Surrogate се срива вместо мен  . “

И както може би се досещате, COM Surrogate е наречен „dllhost.exe“, тъй като COM обектите, които той хоства, са .dll файлове.

Как мога да разбера кой COM обект хостира COM сурогат?

Стандартният диспечер на задачите на Windows не ви дава повече информация за това кой COM обект или DLL файл е хост на COM Surrogate процес. Ако искате да видите тази информация, препоръчваме инструмента на Microsoft Process Explorer. Изтеглете го и можете просто да прегледате dllhost.exe процес в Process Explorer, за да видите кой COM обект или DLL файл хоства.

Както виждаме на екранната снимка по-долу, този конкретен процес dllhost.exe хоства обекта CortanaMapiHelper.dll.

Мога ли да го деактивирам?

Не можете да деактивирате процеса на COM Surrogate, тъй като това е необходима част от Windows. Това всъщност е просто процес на контейнер, който се използва за стартиране на COM обекти, които други процеси искат да изпълняват. Например Windows Explorer (или File Explorer) редовно създава COM Surrogate процес, за да генерира миниатюри, когато отворите папка. Други програми, които използвате, също могат да създадат свои собствени COM Surrogate процеси. Всички dllhost.exe процеси във вашата система са стартирани от друга програма, за да се направи нещо, което програмата иска да направи.

Вирус ли е?

Самият процес на COM Surrogate не е вирус и е нормална част от Windows. Той обаче може да се използва от зловреден софтуер. Например зловредният софтуер Trojan.Poweliks използва dllhost.exe процеси, за да върши мръсната си работа. Ако видите, че се изпълняват голям брой dllhost.exe процеси и те използват значително количество CPU, това може да означава, че процесът на COM Surrogate е злоупотребен от вирус или друго злонамерено приложение.

СВЪРЗАНИ: Кой е най-добрият антивирус за Windows 10? (Достатъчно добър ли е Windows Defender?)

Ако се притеснявате, че злонамерен софтуер злоупотребява с процеса dllhost.exe или COM Surrogate, трябва да стартирате сканиране с предпочитаната от вас антивирусна програма, за да намерите и премахнете всички зловредни програми, налични във вашата система. Ако избраната от вас антивирусна програма казва, че всичко е наред, но сте подозрителни, пуснете сканиране с друг антивирусен инструмент, за да получите второ мнение.