C# OPC-Client nicht server Liste
Nachdem ich kompiliert habe, meine C# in meiner neuen Windows 8-64-Bit-Maschine, fing ich an, die folgende Fehler beim abrufen der Liste der verfügbaren Server in meinem OPC-client-Anwendung.
"OpcNetApi.Com
Unable to cast COM object of type 'System.__ComObject', um den Schnittstellentyp 'OpcRcw.Comn.IOPCServerList2'. Dieser Vorgang ist fehlgeschlagen, da der QueryInterface-Aufruf an die COM-Komponente für die Schnittstelle mit IID '{9DD0B56C-AD9E-43EE-8305-487F3188BF7A}' konnte aufgrund des folgenden Fehler: Klasse nicht registriert (Ausnahme von HRESULT: 0x80040154 (REGDB_E_CLASSNOTREG))."
Was könnte der Grund sein?
- Haben Sie die Kompilierung der C# als 32bit oder 64bit? Ist der Opc-Ausführung in einem 32Bit-Prozess?
- Ich kompilierte 64-bit. Nun wechselte ich wieder auf 32 bit und das problem ist gelöst. @brainwipe bitte schreiben Sie das als Antwort, so dass ich akzeptieren kann.
- Keine Sorge, ich mag Camille ' s Antwort besser. 🙂
Du musst angemeldet sein, um einen Kommentar abzugeben.
Zitiert aus dem OPC.NET readme :
Hallo: um dieses problem Zu lösen installieren Sie OPC .NET API DER OPC .NET API 2.00 Redistributables 105.1 und installieren Sie OPC Core Components Redistributable (x64) 105.1.
Mit diesem können Sie die Verbindung zum OPC-Server running in 32-bit-fom-client läuft auf 64 bit.
Und nicht foget, dass Redistributables (OPC .NET API DER OPC .NET API 2.00 Redistributables, OPC-Core Komponenten Redistributables) und Bibliotheken (OpcNetApi.dll, OpcNetApi.Com.dll, OpcNetApi.Xml.dll...) in Ihrem Projekt referenziert werden muss, die gleichen Versionen sind.
ich denke, das problem ist nur, Sie versuchen, die Verbindung zum remote-Rechner, mit unterschiedlichen Benutzer-und Passwort-erstellen Sie Ihre aktuelle Benutzer in remote-Rechner identisch lokalen Rechner Benutzernamen und Passwort, dann müssen Sie die Konfiguration auf remote-Rechner "component services"->root-Konsole->Komponenten-Dienste->Computer->Dcom config->OpcEnum-Einstellung und geben Sie den Zugriff für diesen Benutzer im Eigenschaften -> Sicherheit mein problem gelöst, indem auf diese Weise
viel Glück