Какво е COM сурогат (dllhost.exe) и защо работи на моя компютър?

Преглеждането на списъка с процеси на компютър с Windows с помощта на (Windows)Task Manager е рецепта за параноя. Има много странно звучащи програми и обикновено няма начин да разберете кое е добро или лошо за вашия компютър. Сурогатът на COM dllhost.exe е само един такъв процес, но е много по-обикновен, отколкото си мислите.

Какво е COM сурогат(Surrogate) (dllhost.exe)?

COM е съкращение от компонентен обектен модел(Component Object Model) . Това е нещо, което Microsoft въведе в началото на 90-те, за да улесни програмистите да разширят функционалността на съществуващия софтуер. С други думи, това е донякъде като плъгинова система, която ви позволява да добавяте нови функции към съществуващи програми като Windows Explorer .

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

Тук идват заместителите на COM . Този подход позволява на (COM)COM да работи в свой отделен процес, сякаш е негова собствена програма. Основната програма и COM сурогатните процеси говорят един с друг, ако е необходимо. Но ако COM сурогатът се срине по някаква причина, това не причинява срив на нищо друго освен собствения му процес. Това прави системата много по-стабилна като цяло.

Безопасен(Safe) ли е COM сурогат(COM Surrogate) (dllhost.exe) ?

Дали(Whether) dllhost.exe е безопасен е труден въпрос за отговор, защото ще зависи от конкретния COM , който работи. Обикновено те хостват доброкачествени процеси, които вършат полезни неща, но не е извън сферата на възможността лошо кодиран COM или злонамерен софтуер в сурогатната рамка на COM да причини повреда или да изпълни зловреден код.

Намиране на местоположението на COM сурогат

Има само едно легитимно местоположение за файла dllhost.exe и това е в папката System32 в папката на Windows . Пътят по подразбиране е Windows > System32 на системното устройство. Системното устройство обикновено е C устройството. Ако намерите този файл някъде другаде, вероятно е вирус. Така че не забравяйте да го сканирате!

Проверка на легитимността на COM сурогат

Както бе споменато по-горе, COM сурогатът, който виждате в диспечера на задачите(Task) , не е конкретно приложение, това е просто обвивка за друг процес. Тъй като не можем лесно да разберем какво всъщност се изпълнява в рамките на конкретен COM сурогатен процес, единственият реален начин да проверим за подозрително поведение е като използваме антивирусна програма.

Разбира се, все пак трябва да стартирате антивирусната си програма(antivirus program) на редовни интервали, но ако видите COM сурогат, който използва много ресурси или причинява нестабилност на системата, това може да е едно от обясненията.

От друга страна, въпросният COM сурогатен процес може просто да е бъг, а не да е злонамерен. Ако сте запазили всичките си документи, можете да опитате принудително да прекратите даден COM сурогатен процес, за да разберете какво прави. Каквото и да се срине или да виси директно след убиването на процеса, вероятно е свързаната програма. След като идентифицирате най-вероятния виновник, ще искате да рестартирате компютъра си.

Коригиране на COM сурогатни грешки

COM сурогатните грешки се случват от време на време и са може би най-честата причина хората да търсят името на процеса на първо място. Грешката „ COM сурогатът е спрял да работи“ може да изглежда загадъчна в началото. Сега, когато знаете какво прави COM сурогатът, е очевидно, че процесът всъщност върши своята работа.

COM сурогатът има за цел да предпази разширенията на програмата от срив на основния процес, който разширяват, така че причината за тази грешка може да бъде проследена обратно до какъвто и да е COM модул, изпълняван в сурогата.

Няма лесен начин да разберете кой COM е бил, тъй като самият сурогат маскира конкретния COM вътре в него. Има няколко вероятни заподозрени:

  • Видео кодеците на трети страни са остарели. Ако имате такива, премахнете ги или ги актуализирайте.
  • Вашата антивирусна програма може да пречи на COM сурогата. Деактивирайте го временно. Ако това изглежда е проблемът, преминете към друга антивирусна програма или опитайте да актуализирате своята до най-новата версия, ако е приложимо.
  • Проверете вашия диск за грешки с помощта на помощна програма като CHKDSK .
  • Проверете(Check) системните файлове за повреда с инструмента за проверка на системните файлове(System File Checker) .
  • Отмяна(Roll) на последните актуализации на драйвери или по-специално актуализиране на драйвери на дисплея и принтера. Опитайте както стандартния GPU драйвер(GPU driver) на производителя, така и OEM версията, ако това се отнася за вашия компютър.

Ако искате да знаете как да диагностицирате точно кой COM работи в сурогата, има по-техническо решение.

Проверка вътре в COM сурогатен процес(COM Surrogate Process) с Process Explorer

Microsoft има допълнителна помощна програма, известна като Process Explorer . Полезно е за различни неща. Например, ако са ви казали, че можете да изтриете папка, защото дадена програма я е отворила, можете да използвате Process Explorer , за да видите коя програма е и да я затворите принудително, без да се налага да рестартирате целия компютър.

Просто(Simply) изтеглете и стартирайте Process Explorer и ще видите прозорец(Window) като този:

Не забравяйте(Remember) , че COM сурогатът(COM Surrogate) всъщност се нарича dllhost.exe. Така че потърсете това и задръжте курсора на мишката върху записа. В малкия изскачащ прозорец ще видите кой DLL файл се хоства. Обикновено това ви дава достатъчно информация, за да разберете коя програма е свързана с нея. Ако не е очевидно от името на DLL , можете да го Google за по-категоричен отговор.

COM на край за парти

За да обобщим, сега знаете какво представляват COM , какво прави COM сурогатът(COMs) , как да коригирате най-често срещаните проблеми и как да разберете с кой COM имате работа. Което(Which) , да се надяваме, е изчистило завинаги проблемите ви, свързани с COM .



About the author

Аз съм уеб разработчик с опит в работата както с Windows 11, така и с 10. Също така съм потребител на Firefox от много години и съм станал доста опитен в използването на изцяло новата конзола за игри Xbox One. Основните ми интереси са в разработката на софтуер, по-специално в уеб и мобилното развитие, както и науката за данни. Имам много добри познания относно различни компютърни системи и тяхното използване, така че мога да предоставя безпристрастна обратна връзка за различни програми или услуги, които може да използвате.



Related posts