Co je náhradní COM (dllhost.exe) a proč běží na počítači?
Pokud jste se dostali do správce úloh, je dobrá šance, že u počítače s operačním systémem Windows bude spuštěn jeden nebo více procesů "COM Surrogate". Tyto procesy mají název souboru "dllhost.exe" a jsou součástí operačního systému Windows. Uvidíte je v systémech Windows 10, Windows 8, Windows 7 a dokonce i starších verzích systému Windows.
Tento článek je součástí naší probíhající série vysvětlující různé procesy nalezené v nástroji Správce úloh, jako je Runtime Broker, svchost.exe, dwm.exe, ctfmon.exe, rundll32.exe, Adobe_Updater.exe a mnoho dalších. Nevíte, jaké jsou tyto služby? Lepší čtení!
Co je náhradou COM (dllhost.exe)?
COM znamená Component Object Model. Jedná se o rozhraní, které společnost Microsoft představila již v roce 1993 a která umožňuje vývojářům vytvářet "objekty COM" pomocí různých programovacích jazyků. V podstatě se tyto objekty COM připojují do jiných aplikací a rozšiřují je.
Správce souborů systému Windows například používá objekty COM k vytvoření miniatur obrázků a dalších souborů při otevření složky. Objekt COM zpracovává zpracování obrázků, videí a dalších souborů pro vytváření miniatur. To umožňuje například rozšíření Průzkumníka souborů s podporou nových videokodek.
To však může vést k problémům. Pokud dojde k selhání objektu COM, dojde k jeho spuštění. V jednom okamžiku bylo běžné, že tyto objekty COM vytvářející miniatury se s nimi zhroutily a odstranily celý proces Průzkumníka Windows s nimi.
Chcete-li tento problém vyřešit, společnost Microsoft vytvořila proces nahrazení COM. Dejte nám zpětnou vazbu Příčina Náhradní proces COM spustí objekt COM mimo původní proces, který požaduje. Pokud dojde k selhání objektu COM, provede pouze proces nahrazení COM a původní proces hostitele se neztratí. Například Průzkumník Windows (nyní známý jako Průzkumník souborů) spouští proces nahrazení COM, kdykoli potřebuje generovat miniatury. Proces nahrazení COM je hostitelem objektu COM, který provádí práci. Pokud dojde k selhání objektu COM, dojde pouze k přerušení COM Surrogate a původnímu procesu File Explorer.
"Jinými slovy", jak to uvádí oficiální blog Microsoft The Old New Thing, "COM Surrogate je Necítím se dobře, pokud jde o tento kód, a tak požádám společnost COM, aby ji hostila v jiném procesu. Tímto způsobem, pokud dojde ke zhroucení, je to proces náhradního obětování COM, který se místo mě střetává proces."
A jak jste si mohli myslet, COM Surrogate je pojmenován jako "dllhost.exe", protože objekty COM, které hostuje, jsou soubory DLL..
Jak mohu zjistit, který objekt COM je nahrazen?
Standardní Správce úloh systému Windows vám neumožňuje získat další informace o tom, který objekt COM nebo DLL soubor hostuje. Pokud chcete vidět tyto informace, doporučujeme nástroj Microsoft Process Explorer. Stáhněte si to a můžete jen myši přes proces dllhost.exe v Process Explorer, abyste zjistili, který COM objekt nebo DLL soubor je hosting.
Jak můžeme vidět na následujícím obrázku, tento konkrétní proces dllhost.exe hostuje objekt CortanaMapiHelper.dll.
Mohu to zakázat?
Nemůžete deaktivovat proces nahrazování COM, protože je nezbytnou součástí systému Windows. Je to opravdu jen kontejnerový proces, který se používá pro spuštění objektů COM, které chtějí spustit jiné procesy. Například Průzkumník Windows (nebo Průzkumník souborů) pravidelně vytváří proces nahrazení COM pro generování miniatur při otevření složky. Jiné programy, které používáte, mohou také vytvořit vlastní procesy nahrazení COM. Všechny procesy dllhost.exe ve vašem systému byly spuštěny jiným programem, aby provedli něco, co chce program udělat.
Je to virus?
Náhradní proces COM samotný není virus a je běžnou součástí systému Windows. Nicméně může být použita malware. Například malware Trojan.Poweliks používá procesy dllhost.exe k provádění špinavé práce. Pokud vidíte velké množství procesů dllhost.exe spuštěných a používají znatelné množství procesoru, mohlo by to znamenat, že proces nahrazení produktu COM je zneužíván virem nebo jinou škodlivou aplikací.
Pokud se obáváte, že malware zneužívá proces dllhost.exe nebo COM Surrogate, měli byste spustit skenování pomocí upřednostňovaného antivirového programu a vyhledat a odstranit jakýkoli malware přítomný ve vašem systému. Pokud váš antivirový program říká, že je vše v pořádku, ale máte podezření, spusťte skenování s jiným antivirovým nástrojem, abyste získali druhý názor.