E_NOINTERFACE error

Hi,

One of my OPC Server Connection is failed due to the follwing error. Can you tell me what is the problem; This was continously running and because of this my server stopped. Can you help me in this. I am connecting Ignition Server with Siemens Wincc (PCS7)

[color=#FF0000]com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x80040154; REGDB_E_CLASSNOTREG (Class not registered)
com.jniwrapper.win32.com.ComException.checkResult(SourceFile:172)
com.jniwrapper.win32.com.ComFunctions.coCreateInstanceEx(SourceFile:229)
com.inductiveautomation.opccom.COMServerImpl$ConnectServerJob.internalRun(COMServerImpl.java:708)
com.inductiveautomation.opccom.wrapper.OleJob.run(OleJob.java:47)
com.jniwrapper.win32.MessageLoopThread$ThreadSynchronizedAction.run(MessageLoopThread.java:566)
com.jniwrapper.win32.MessageLoopThread$LoopThread.run(MessageLoopThread.java:508)[/color]


Hi,

You have other OPC-COM connections that are working correctly? Did this ever work? Did you recently install a new piece of OPC software?

This error usually is caused by the OPC Core Components not being installed correctly. You can download the package from the OPC Foundation’s website. Since most OPC products try to install them, sometimes installing a new piece can get them out of sync, and re-running the main installer usually fixes the problem.

Let me know if that doesn’t help.

Regards,

I have installed OPC Core Components in One of my server where Ignition is running. [color=#FF0040]OPC connection is not established after restarted Ignition system itself[/color]. Is it necessary to install this OPC core component in existing Wincc system where ignition trying to connect.

Still the same error code appears in OPC status

Yes, you will need to install that on the machine with the OPC server, and client (which you’ve already done).

Also, is your Ignition installation 32-bit or 64-bit? The OPC-COM module is known to have some problems in 64-bit JVMs, so if you are running 64-bit, you might try switching to 32, if nothing else, just to verify that it is the cause.

Regards,

I have installed OPC Core Components in the remote server as well as ignition server. But there is no change yet. I am using Ignition installer 32 version 7.2.1. Can you please tell me what to do next solve the this error??

perhaps you could try and download the kepware opc-ua wrapper. you only get a 2 hour runtime on it but that may be enough to narrow down the problem to either opc-dcom or the ignition opc-da module. basically it connects to the opc-da server, converts it to opc-ua, then you connect ignition to kepware via opc-ua.

Hi,

The next step is to double check your ProgId/CLSID settings, since this is a remote connection. This is not a problem with Ignition- this is Windows saying that the ID that you’re trying to instantiate doesn’t exist. That can sometimes happen due to the core components, but would also happen if you simply had the class id wrong. Try locating the CLSID for the WinCC server (It can be found in the registry under HKEY_CLASSES_ROOT{The name of the opc server}\CLSID. In the Ignition settings, if you were using the progid previously, try using the clsid instead.

Regards,

The above suggestions from Colby worked for me.

My config:

Windows Server 2008 R2 x64 “current updates”
Ignition 7.3.3
KepServerV4

I too had the same error when trying to connect the COM driver to my local and remote opc servers. (local is kepware in my case)

I installed the OPC Core Components Redistributable x64 then rebooted and good to go.
In fact, now when using the gateway to add another COM based opc server, the gateway see’s the local Kepware OPC server and lists it as a choice vs before I had set it up manually with the Other Server option.

I can now connect to any of my remote opc servers and my local kepware.

[color=#FF0000]WARNING:[/color] The OPC-COM module does not currently work correctly in 64-bit. By installing the core components, you’ll be able to connect, but the system will be very unstable. The only work around is to run Ignition against a 32-bit JVM.

We are working to resolve this, but don’t have a projected timeline.

Sorry about that, but I wanted to make sure to give you the heads up that while it might look like it’s working, you’re definitely going to run into problems.

Regards,

Thank you very much for that notification… much appreciated.

Colby,

I did experience the issue as you said it would show. For a work around, if I install the 32bit version of ignition and 32bit java on the 64bit server 2008 installation should I then be able to use the opc-com?

By doing so, can I still utilize the additional ram of the server for the gateway or would I be restricted by the 32bit limit of 1536MB? Is the gateway max memory an ignition and java limitation or an OS only limitation?

wrapper.java.maxmemory=1536

vs

wrapper.java.maxmemory=7168

Also by doing so, on this issue… ignition should still be able to communicate with remote kepware OPC-DA server even if it’s running 64bit?

Hi,

Sorry for the late reply.

Unfortunately, by switching to 32-bit, you’d be limited to the 1.5gb memory cap. Also, it doesn’t matter if the server is local or remote, it all depends on what the system running the com module is running on.

If you’re connecting to Kepware, you should be able to use UA instead (version 5.7 has a compatibility problem, but 5.6 and before are fine).

I’m working on trying to get 64-bit compatibility fixed, but it will take a bit more time.

Regards,

Hello Colby,

I had a problem with the OPC DA module because I’m using Windows 2008 x64 and the Gateway was not able to discover the local OPC servers. I installed the last “OPC Core Componets” and the problem is solved but I wonder if all the issues related to using OPC DA COM module in a x64 system that you mentioned are solved.

Please can you confirm if I can use OPC DA COM module in a Win x64 system without problems?.

Thank you.
Regards.
Fran.

Hi Fran,

Yes, all of the known issues have been solved for a while now (the OPC-COM module was tested on a 64-bit machine at the last OPC Interoperability Conference, towards the beginning of the year).

With the 64-bit core components installed, you shouldn’t have any problems (besides the normal stuff that might come up with DCOM configuration).

Regards,