WinCC OPC DA Connection faulted after drag n drop

Following is the error i receive after attempting to drag and drop WinCC Tags from OPC Browser into SQLTags. Actually the drop is successful and the items appear in SQLTags but they have a red cross on them and the Data Quality property says OPC not connected. Right after this happens, the OPCServer.WinCC connection on the status page shows faulted(It showed connected before) and the OPC browser in Designer gives an error:
Error browsing OPC

Here is the error in the OPC Connections Status page:

Error advising subscription callback. DCOM security settings are likely preventing the OPC server from connecting to the client for callbacks.
Details are:
java.lang.Exception: Error advising subscription callback. DCOM security settings are likely preventing the OPC server from connecting to the client for callbacks.
com.inductiveautomation.opccom.wrapper.subscriptions.COMSubscription.oleloop_updateGroup(COMSubscription.java:634)
com.inductiveautomation.opccom.wrapper.subscriptions.COMSubscription$Connector.internalRun(COMSubscription.java:680)
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)
com.jniwrapper.win32.com.ComException: COM object method returns error code: 0x8000FFFF; E_UNEXPECTED (Catastrophic failure)
com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:744)
com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:723)
com.jniwrapper.win32.ole.impl.IConnectionPointImpl.advise(SourceFile:93)
com.inductiveautomation.opccom.wrapper.subscriptions.DataChangeDispatcher.advise(DataChangeDispatcher.java:86)
com.inductiveautomation.opccom.wrapper.subscriptions.COMSubscription.oleloop_updateGroup(COMSubscription.java:632)
com.inductiveautomation.opccom.wrapper.subscriptions.COMSubscription$Connector.internalRun(COMSubscription.java:680)
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)

Please note that removing the OPCServer.WinCC connection and restarting the PC clears this error. Creating a new OPCServer.WinCC connection shows connected. So i dont think its a DCOM issue. Moreover i am using it locally so it shouldnt really matter. Its only after dragging and dropping tags from the OPC browser into SQLTags in the designer that this connection gets faulted.
I have disabled the firewall and taken care of all the DCOM settings just in case. The WinCC runtime was open and running on the same system.

System Details:
Windows XP SP3
WinCC 6.2 SP2
Ignition 7.1.2

Any clues about what might be going wrong here?

EDIT:

Console Log info:
7/1/10 5:14:58 PM - Server ‘OPCServer’ state set to [CONNECTING]
7/1/10 5:14:58 PM - Attempting to connect COM server ‘OPCServer’
7/1/10 5:15:01 PM
Unable to advise server shutdown hook. Server may not support this functionality.

com.inductiveautomation.ignition.gateway.web.pages.config.systemconsole.LogViewer$SerializableLoggingEvent$ClonedThrowable: COM object method returns error code: 0x80070005; E_ACCESSDENIED (Access is denied.)
com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:744)
com.jniwrapper.win32.com.impl.IUnknownImpl.invokeStandardVirtualMethod(SourceFile:723)
com.jniwrapper.win32.ole.impl.IConnectionPointImpl.advise(SourceFile:93)
com.inductiveautomation.opccom.wrapper.shutdown.ServerShutdownDispatcher.advise(ServerShutdownDispatcher.java:52)
com.inductiveautomation.opccom.COMServerImpl$ConnectServerJob.internalRun(COMServerImpl.java:744)
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)

7/1/10 5:15:01 PM - Error connecting OPC-COM server.
7/1/10 5:15:01 PM - Disconnecting server ‘OPCServer’
7/1/10 5:15:01 PM - Server ‘OPCServer’ state set to [CLOSED]
7/1/10 5:15:01 PM - Server ‘OPCServer’ state set to [FAULTED]

Hello!

On the contrary, it’s definitely a DCOM issue. The reason why this is confusing is that there are two connections involved: Ignition connecting to the server when the connection is defined (working), and the server connecting back to Ignition any time a callback is established: for subscribed values, and the shutdown notification (the second error you posted). This is the part that’s not working.

Your second error kind of says it all:

This is a common misconception, and I agree, it’s easy to think that. There’s one big trick though: The two application are currently running under different user accounts, so they may as well be remote.

The reason they’re running under different accounts is because Ignition runs as a service, which by default uses the system account. I would bet that WinCC is running under a different user account. All of this is just a guess, but I’ve seen it many many times before.

Some things to try:
1a) Try changing Ignition to run under a user account on the machine, hopefully the same as WinCC. Go to Control Panel>Administrative Tools>Services, find Ignition, right-click and select “properties”. You can change the account from the “Log On” panel.
1b) From the same spot, try selecting “allow interaction with desktop”. This can sometimes solve this cross-account problem- but usually works better on older OSes like XP.
2) In your systems default DCOM settings, allow remote access for “Anonymous” and the “Everyone” group in all 4 sections.

Hope this helps. Shortly in the future as the market transitions to OPC-UA problems like this should start to go away. I’d recommend looking into OPC-UA support in WinCC.

Regards,

1a) Solved the problem.
Thanks Colby.