Professional OPC
Development Tools

logos

DeltaV browsing issue

More
23 Jan 2018 17:17 #5906 by micham
Replied by micham on topic DeltaV browsing issue
What I meant is that the operating system is 64 bits.
Our product which uses your browsing component is a 32 bit program.

We have tried with our 32 bit program and also with your 64 bit Easy OPC client.

In both cases, the result is the same - exception and not possible to browse items.

Thanks,

Michael

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 16:33 #5905 by support
Replied by support on topic DeltaV browsing issue
You have answered to: "4. Does your client run in 32-bit or 64-bit process?" by "64 bits".
Now you wrote "Our program that is using your component is a 32 bit application."

I think this is a contradiction. Can you please clarify that.

All .NET binaries that come with QuickOPC are compiled for "AnyCPU" target. That is, they run in 32-bit process on 32-bit systems, and in 64-bit process on 64-bit systems. Changing them to always run in 32-bit process is possible either by a) opening the corresponding example solution (because they come with source code), changing the target CPU in project properties, and rebuilding, or b) patching the existing binary using the CORFLAGS utility, docs.microsoft.com/en-us/dotnet/framework/tools/corflags-exe-corflags-conversion-tool .

Proper registration is a task for the server vendor. Windows normally "reflects" the corresponding parts of the registry between the 32- and 64-bit worlds, so the component vendors do not necessarily have to do anything special, but it does not always work. First we need to establish whether the following two facts are both true: 1) all 32-bit local clients work and 2) no 64-bit clients work.

Best regards

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 16:21 #5904 by micham
Replied by micham on topic DeltaV browsing issue
Our program that is using your component is a 32 bit application.

Do you have a 32 bit version of the EasyOPCClient demo program?

Can you please tel me if it possible to register the OPC server in the 64-bit part of the registry?

Thanks
Michael

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 15:10 #5902 by support
Replied by support on topic DeltaV browsing issue
Can you please, for test, rebuild the client application to run under 32 bits (target CPU = x86)?
It is quite likely that the OPC server has not registered itself in 64-bit part of the registry.

(I assume all other OPC clients that you have tested actually run in 32-processes, right? Note: Task Manager can show this).

Best regards

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 14:50 #5901 by micham
Replied by micham on topic DeltaV browsing issue
Browsing OPC servers works fine.
Browsing OPC items fails - exception - Class not registered.
Read/Write to OPC items fails - exception - Class not registered.
Matrikon OPC Clients and other OPC client can browse OPC items.
64 bits
Client and server on the same machine.

Thanks.

Michael

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 14:47 #5900 by micham
Replied by micham on topic DeltaV browsing issue
Browsing OPC server is working
Browsing OPC tags - doesn't work - Class no registered.
Reading OPC item value - Class no registered.

It always happens.

64 bits

Client and server on the same machine. Only happens with DeltaV OPC server.

Thanks.

Michael

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 14:25 #5899 by support
Replied by support on topic DeltaV browsing issue
Hello.

You wrote "still struggling" - have we communicated about this issue before? If so, can you please point to a topic on the forums, or email (date)? Thank you very much.

Some questions:
1. Does it happen only with browsing, or with other OPC operations too?
2. Does it happen always, often, sometimes, rarely?
3. What about other OPC clients - can they browse?
4. Does your client run in 32-bit or 64-bit process?
5. Is the client on the same machine as the server, or is it via DCOM - remotely?

Best regards

Please Log in or Create an account to join the conversation.

More
23 Jan 2018 14:22 #5898 by support
From: M.
Sent: Tuesday, January 23, 2018 10:54 AM
To: Z.
Subject: DeltaV browsing issue

Hi Z.,

We are still struggling with the Browsing issue using the DeltaV OPC server. Please see below the Inner Exception details.
Do you know what may cause this problem?

Exceptions
 
Type: OpcLabs.BaseLib.Browsing.BrowseException
Data: 
HelpLink: 
HResult: -2146233088 (0x80131500)
InnerException:
    OpcLabs.EasyOpc.OperationModel.OpcException: An OPC operation failure with error code -2147221164 (0x80040154) occurred, originating from 'OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient'. The inner exception contains details about the problem. ---> System.Runtime.InteropServices.COMException: Class not registered 
       --- End of inner exception stack trace ---
       at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.CheckOpcResult(CHResult* hResult)
       at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.InternalBrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.PSBoxingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.EasyDAClientCompositor.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.CompositeEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Internal.LicensingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.EasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
       at OpcLabs.EasyOpc.DataAccess.Browsing.DANodeBrowseable.BrowseBranches(Object parentNode, Object nodeFilter, IEnumerable`1& branches, IEnumerable`1& exceptions)
    Data: 
    ErrorCode: -2147221164
    HelpLink: 
    HResult: -2146233088 (0x80131500)
    InnerException: System.Runtime.InteropServices.COMException (0x80040154): Class not registered 
        Data: 
        ErrorCode: -2147221164
        HelpLink: 
        HResult: -2147221164 (0x80040154)
        InnerException: 
        Message: Class not registered 
        Source: OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient
        StackTrace: 
        TargetSite: 
    Message: An OPC operation failure with error code -2147221164 (0x80040154) occurred, originating from 'OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient'. The inner exception contains details about the problem.
    Source: App_Web_OpcLabs.EasyOpcClassicRaw.amd64
    StackTrace:
           at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.CheckOpcResult(CHResult* hResult)
           at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.InternalBrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.PSBoxingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.EasyDAClientCompositor.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.CompositeEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.ForwardingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Internal.LicensingEasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.EasyDAClient.BrowseNodes(ServerDescriptor serverDescriptor, DANodeDescriptor parentNodeDescriptor, DABrowseParameters browseParameters)
           at OpcLabs.EasyOpc.DataAccess.Browsing.DANodeBrowseable.BrowseBranches(Object parentNode, Object nodeFilter, IEnumerable`1& branches, IEnumerable`1& exceptions)
    TargetSite: Void CheckOpcResult(CHResult*)
        DeclaringType: OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient
        Module: App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll
            Assembly: App_Web_OpcLabs.EasyOpcClassicRaw.amd64, Version=5.41.1253.1, Culture=neutral, PublicKeyToken=6faddca41dacb409
            CustomAttributes: 
            FullyQualifiedName: C:\Program Files (x86)\Control-See\UCME-OPC\BIN\App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll
            MDStreamVersion: 131072
            MetadataToken: 1
            ModuleHandle: System.ModuleHandle
                MDStreamVersion: 131072
            ModuleVersionId: 0c1165e8-dbca-41c8-b1c4-bf9845e2ed07
            Name: App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll
            ScopeName: App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll
Message: Problem browsing OPC Data Access (OPC-DA) branches.
Source: 
StackTrace: 
TargetSite:

Please Log in or Create an account to join the conversation.

Moderators: support
Time to create page: 0.231 seconds

      

 Recommend this on Google