Was ist COM Surrogate (dllhost.exe) und warum läuft es auf meinem PC?
Wenn Sie in Ihrem Task-Manager herumstoßen, werden Sie wahrscheinlich einen oder mehrere "COM Surrogate" -Prozesse auf einem Windows-PC sehen. Diese Prozesse haben den Dateinamen „dllhost.exe“ und sind Teil des Windows-Betriebssystems. Sie werden unter Windows 10, Windows 8, Windows 7 und sogar früheren Versionen von Windows angezeigt.
Dieser Artikel ist Teil unserer fortlaufenden Serie, in der verschiedene Prozesse erläutert werden, die im Task-Manager zu finden sind, beispielsweise Runtime Broker, svchost.exe, dwm.exe, ctfmon.exe, rundll32.exe, Adobe_Updater.exe und viele andere. Weiß nicht, was diese Dienste sind? Beginnen Sie lieber mit dem Lesen!
Was ist COM-Ersatz (dllhost.exe)?
COM steht für Component Object Model. Dies ist eine von Microsoft bereits 1993 eingeführte Schnittstelle, mit der Entwickler "COM-Objekte" mit verschiedenen Programmiersprachen erstellen können. Diese COM-Objekte lassen sich im Wesentlichen in andere Anwendungen integrieren und erweitern diese.
Beispielsweise verwendet der Windows-Dateimanager COM-Objekte, um beim Öffnen eines Ordners Miniaturbilder von Bildern und anderen Dateien zu erstellen. Das COM-Objekt verarbeitet die Verarbeitung von Bildern, Videos und anderen Dateien, um die Miniaturbilder zu erstellen. Dadurch kann der Datei-Explorer beispielsweise um die Unterstützung neuer Videocodecs erweitert werden.
Dies kann jedoch zu Problemen führen. Wenn ein COM-Objekt abstürzt, wird der Host-Prozess heruntergefahren. An einem Punkt war es üblich, dass diese COM-Objekte, die die Miniaturansicht erzeugten, abstürzen und den gesamten Windows Explorer-Prozess mit sich brachten.
Um dieses Problem zu beheben, hat Microsoft den COM-Surrogate-Prozess erstellt. Der COM-Ersatzprozess führt ein COM-Objekt außerhalb des ursprünglichen Prozesses aus, der es angefordert hat. Wenn das COM-Objekt abstürzt, wird nur der COM-Surrogate-Prozess heruntergefahren, und der ursprüngliche Host-Prozess stürzt nicht ab. Beispielsweise startet Windows Explorer (jetzt als Datei-Explorer bezeichnet) einen COM-Surrogate-Prozess, wenn er Miniaturbilder erstellen muss. Der COM-Surrogate-Prozess hostet das COM-Objekt, das die Arbeit erledigt. Wenn das COM-Objekt abstürzt, stürzt nur der COM-Surrogate ab, und der ursprüngliche Datei-Explorer-Prozess wird weiter ausgeführt.
"Mit anderen Worten", so der offizielle Microsoft-Blog The Old New Thing, "ist das COM Surrogate der." Ich fühle mich nicht gut mit diesem Code, also werde ich COM bitten, ihn in einem anderen Prozess zu hosten. Auf diese Weise stürzt der COM-Surrogate-Opferprozess ab, wenn er abstürzt verarbeiten."
Wie Sie vielleicht schon vermutet haben, heißt COM Surrogate "dllhost.exe", da die von ihm gehosteten COM-Objekte DLL-Dateien sind.
Wie kann ich sagen, welches COM-Objekt ein COM-Surrogat hostet??
Der Standard-Task-Manager von Windows enthält keine weiteren Informationen darüber, welches COM-Objekt oder welche DLL-Datei von einem COM-Surrogate-Prozess gehostet wird. Wenn Sie diese Informationen anzeigen möchten, empfehlen wir das Process Explorer-Tool von Microsoft. Laden Sie es herunter, und Sie können einfach einen Prozess dllhost.exe im Prozess-Explorer mit der Maus überfahren, um zu sehen, welches COM-Objekt oder welche DLL-Datei es hostet.
Wie wir in der Abbildung unten sehen können, hostet dieser bestimmte dllhost.exe-Prozess das CortanaMapiHelper.dll-Objekt.
Kann ich es deaktivieren??
Sie können den COM-Ersatzvorgang nicht deaktivieren, da dies ein notwendiger Bestandteil von Windows ist. Es ist wirklich nur ein Containerprozess, der zum Ausführen von COM-Objekten verwendet wird, die andere Prozesse ausführen möchten. Beispielsweise erstellt Windows Explorer (oder Datei-Explorer) regelmäßig einen COM-Surrogate-Prozess, um beim Öffnen eines Ordners Miniaturansichten zu erstellen. Andere Programme, die Sie verwenden, können auch eigene COM-Surrogate-Prozesse erstellen. Alle dllhost.exe-Prozesse auf Ihrem System wurden von einem anderen Programm gestartet, um etwas zu tun, das das Programm ausführen möchte.
Ist es ein Virus??
Der COM-Surrogate-Prozess selbst ist kein Virus und ein normaler Bestandteil von Windows. Es kann jedoch von Malware verwendet werden. Zum Beispiel verwendet die Trojan.Poweliks-Malware dllhost.exe-Prozesse, um ihre fehlerhafte Arbeit zu erledigen. Wenn eine große Anzahl von dllhost.exe-Prozessen ausgeführt wird und diese eine merkliche Menge an CPU verwenden, kann dies darauf hindeuten, dass der COM-Ersatzprozess durch einen Virus oder eine andere schädliche Anwendung missbraucht wird.
Wenn Sie befürchten, dass Malware den Prozess dllhost.exe oder COM Surrogate missbraucht, sollten Sie einen Scan mit Ihrem bevorzugten Antivirenprogramm durchführen, um auf Ihrem System vorhandene Malware zu finden und zu entfernen. Wenn Ihr Antivirenprogramm Ihrer Wahl besagt, dass alles in Ordnung ist, Sie aber misstrauisch sind, führen Sie einen Scan mit einem anderen Antivirenprogramm aus, um eine zweite Meinung zu erhalten.