DCOM-Fehler 0x80040202

Symptom

Wenn eine Applikation eines OPC-Clients keine Callbacks vom OPC-Server erhalten kann, bemerken Benutzer meist mindestens zwei Symptome:

  • Die OPC-Client-Applikation kann keine OPC-Gruppe erstellen.
  • Die OPC-Client-Applikation kann keine Datenaktualisierungen anzeigen. Die Datenwerte bleiben somit unverändert.

 

Ursache

Der Fehler 0x80040202 tritt auf, wenn die OPC-Client-Applikation keine Callbacks vom OPC-Server empfangen kann.

 

Reparaturverfahren an der Firewall

Wenn sich der OPC-Clientcomputer hinter einer Firewall (Hardware oder Software) befindet, kann der Empfang von Callbacks am Ziel fehlschlagen. Der OPC-Client kann zwar ausgehende OPC-Aufrufe tätigen, Callbacks vom OPC-Server werden jedoch durch die Firewall blockiert. Um diesen Fehler zu beheben, müssen Sie die Firewall ausschalten.

 

Wenn sich der Computer in einem sicheren Netzwerk befindet, besteht nur eine sehr geringe potenzielle Gefahr, vorausgesetzt die Firewall wird nur für kurze Zeit abgeschaltet. Vergewissern Sie sich bei Ihrem Netzwerkadministrator, dass ein vorübergehendes Ausschalten der Firewall sicher ist.

 

Um die Windows-Firewall abzuschalten, gehen Sie wie folgt vor:

  1. Geben Sie in das Suchfeld von Windows, das in der Taskleiste angezeigt wird, Windows Defender Firewall ein.
  1. Drücken Sie die Taste EINGABE.
  1. Wählen Sie Windows Defender Firewall ein- oder ausschalten.
  • Das Dialogfeld Einstellungen anpassen wird angezeigt.
  1. Wählen Sie Windows-Firewall deaktivieren (nicht empfohlen).
  1. Klicken Sie OK.

 

Sobald die Kommunikation möglich ist, müssen Sie die Firewall wieder einschalten.

 

Reparaturverfahren bei Authentifizierungsfehlern

Wenn ein Callback den OPC-Clientcomputer erreicht, versucht das Betriebssystem, die ankommende Kombination aus Benutzername und Passwort anhand einer Bestandsliste zu authentifizieren. Windows kann diese Kombination jedoch aus verschiedenen Gründen zurückweisen, wie nachfolgend beschrieben.

 

Kombination aus Benutzername und Passwort

Es ist von äusserster Wichtigkeit, dass sowohl der Benutzername als auch das Passwort auf dem OPC-Client- und dem OPC-Servercomputer erkannt werden. Im Fall von Callbacks ist es möglich, dass der Benutzername und das Passwort auf einem Computer nicht mit denen auf dem anderen Computer übereinstimmen. Sie müssen sorgfältig sicherstellen, dass alle Kombinationen auf beiden Computern übereinstimmen.

 

Nur Gast

Die Standardeinstellung in Windows XP und späteren Editionen ist, dass sich lokale Benutzer bei Verwendung von Arbeitsgruppen als Gast authentifizieren müssen. Dies ist auch als Simple File Sharing oder einfache Dateifreigabe bekannt. Diese Standardeinstellung bietet jedoch nicht die notwendige Authentifizierungsebene für die Arbeit. Daher müssen Sie diese Option wie folgt ausschalten:

  1. Geben Sie in das Suchfeld von Windows, das in der Taskleiste angezeigt wird, Lokale Sicherheitsrichtlinie ein.
  1. Drücken Sie die Taste EINGABE.
    Hinweis: Sie können dieses Fenster auch öffnen, indem Sie das Dialogfeld Ausführen aufrufen, dort secpol.msc eingeben und dann OK klicken.
  • Das Fenster Lokale Sicherheitsrichtlinie
  1. Erweitern Sie unter Sicherheitseinstellungen die Option Lokale Richtlinien und wählen Sie dann den Ordner Sicherheitsoptionen.
  1. Suchen Sie nach Netzwerkzugriff: Modell für gemeinsame Nutzung und Sicherheitsmodell für lokale Konten und stellen Sie hier Klassisch – lokale Benutzer authentifizieren sich als sie selbst ein.

 

Probleme mit der OPC-Server-Identität

Callbacks übernehmen die Identität des OPC-Servers. Diese Identität wird durch die eingestellte OPC-Server-Identität geregelt und das Benutzerkonto (wenn als OPC-Server-Identität Dieser Benutzer eingestellt ist) oder der startenden Benutzer (wenn als OPC-Server-Identität Benutzer, der die Anwendung startet eingestellt ist) wird vom OPC-Client nicht erkannt.

In diesem Fall müssen Sie dem OPC-Client das Benutzerkonto der Person hinzufügen. Es ist auch möglich, dass dieses Benutzerkonto keine Zugriffsrechte auf den OPC-Client hat oder dass dem Benutzerkonto der Zugriff in der Zugriffssteuerungsliste (Access Control List, ACL) der systemweiten DCOM-Einstellungen explizit untersagt wird.

 

Probleme mit der Zugriffssteuerungsliste (ACL) und Reparaturverfahren über COM-Sicherheit

Sobald Windows das Benutzerkonto, das den Callback ausgelöst hat, authentifiziert hat, prüft es die Zugriffsrechte des Benutzerkontos anhand der ACL des OPC-Clients. In diesem Fall verweist Windows auf die Einstellungen der Sicherheitsbeschränkungen für die DCOM-Zugriffsberechtigungen, da wir mit einem Callback arbeiten.

 

Systemweite DCOM-Einstellungen konfigurieren

Änderungen an den systemweiten DCOM-Einstellungen betreffen alle Windows-Applikationen, die DCOM verwenden, inklusive der OPC-Applikation. Gehen Sie wie folgt vor, um die notwendigen Änderungen durchzuführen. Beachten Sie, dass Sie diese Schritte auf dem OPC-Servercomputer ausführen müssen, diese aber auch auf dem OPC-Client erforderlich sein können.

  1. Klicken Sie in Windows Start und wählen Sie Ausführen.
  1. Geben Sie im Dialogfeld Ausführen den Befehl DCOMCNFG ein, um das Fenster Komponentendienste einzublenden und die DCOM-Konfiguration zu starten. Klicken Sie dann OK.
  1. Erweitern Sie im Fenster Komponentendienste unter Konsolenstamm erst den Ordner Komponentendienste und dann den Ordner Computer.
  • Der Ordner Computer enthält den Eintrag "Arbeitsplatz".
  1. Rechtsklicken Sie Arbeitsplatz und wählen Sie Eigenschaften.
  1. Wählen Sie im Dialogfeld Eigenschaften von Arbeitsplatz das Register COM-Sicherheit.
  1. Klicken Sie im Abschnitt Zugriffsberechtigungen die Option Limits bearbeiten.
  1. Fügen Sie Anonyme Anmeldung hinzu und aktivieren Sie Lokaler Zugriff und Remotezugriff.
  1. Fügen Sie Jeder hinzu und aktivieren Sie Lokaler Zugriff und Remotezugriff.
  1. Klicken Sie OK.