Professional OPC
Development Tools

logos

Online Forums

Technical support is provided through Support Forums below. Anybody can view them; you need to Register/Login to our site (see links in upper right corner) in order to Post questions. You do not have to be a licensed user of our product.

Please read Rules for forum posts before reporting your issue or asking a question. OPC Labs team is actively monitoring the forums, and replies as soon as possible. Various technical information can also be found in our Knowledge Base. For your convenience, we have also assembled a Frequently Asked Questions page.

Do not use the Contact page for technical issues.

Cannot browse OPC servers in remote computer

More
01 Aug 2019 17:50 #7594 by support
There are multiple things here.

1. You should not use properties for getting the value. That's one of the big "Don't-s" in OPC. I am not sure why you have given that example, it brings nothing useful.

2. The other example with ReadMultiple looks good. It is important to read many variables like this, and not one by one. For important, however, it is very important what MaximumAge are you specifying. If it is 0, it instructs the server to read form the device, which may take long. Similarly, if it a low number. What value are you using?

3. When you use any of the interactive clients such as the Quick Client, the timings are very different. What happens is that you first connect to the server, and that takes some time and the server is processing it. Because a human is slow, it takes time before next action is taken - and, you actually need to Add Group in the client. That again can take some time, while the server is internally working on it. The you need to select/Add Item. The situation repeats. And then you do a Read. So, from the moment you started, to the moment you do the Read, quite a time elapses. But with the coded client like QuickOPC, it (simplified: ) connects -adds the group - adds the item - calls the Read, so the processing times that were "hidden" in the interactive client become apparent.

For most part of it, however, it is usually the "set-up" that takes long. Once you are already connected,a and the OPC Group and OPC Item are there, things are faster. QuickOPC keeps the connection/group/item for some time (these are the hold periods). So, this explains why sometimes it is slow and sometimes faster. It can also be used as a work around: If you are reading, let's say, once per minute, Increasing the hold periods so that the connection stays always open would be a good idea - make them higher than one minute. This helps with subsequent operations but not the very first one. If you are concerned about the very first one as well, you can subscribe upfront to anything from the server - and give it some time after that. Any other operations later then will not require a new connection, because the subscription must keep the connection open. But they may still require new Group/Item, so the Hold periods advise above is still valid.

Best regards

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

More
01 Aug 2019 08:22 #7593 by SZL
I send additional informations about my tests.

So the below post is related to the GUI.
We have a WCF service, that read the OPC tag values and insert the data to a database.

Out requirements:
- Read 300 tag values every minute.

I create a test application to make my tests faster, so the test cases:

CASE: A

In the first test I use this code:
Code:
Private Sub BtnRead_Click(sender As Object, e As EventArgs) Handles btnRead.Click btnRead.Enabled = False txtLog.Text &= "------------------------------------------------------------------" & vbCrLf Try Dim item As New DAReadItemArguments(txtServer.Text, txtProgId.Text, txtTag.Text, CInt(txtValueAge.Text)) Dim res = ReadTagValuesFromOPC(item) For Each i In res txtLog.Text &= "Result: " & i.ToString() & vbCrLf Next Catch ex As Exception txtLog.Text &= "Error during read OPC tag values: " & ex.Message & vbCrLf If ex.InnerException IsNot Nothing Then txtLog.Text &= "InnerException: " & ex.InnerException.Message & vbCrLf End If Finally btnRead.Enabled = True End Try End Sub Public Function ReadTagValuesFromOPC(ByVal tagData As DAReadItemArguments) As DAVtqResult() Using CL As New EasyDAClient() CL.InstanceParameters.Mode.AllowAsynchronousMethod = True CL.InstanceParameters.Mode.AllowSynchronousMethod = True CL.InstanceParameters.HoldPeriods.TopicRead = 59000 CL.InstanceParameters.Timeouts.ReadItem = 58000 CL.InstanceParameters.Timeouts.BrowseServers = 50000 Return CL.ReadMultipleItems(New DAReadItemArguments() {tagData}) End Using End Function

The result:

Attachment 02.PNG not found



CASE: B

I see in Kepware Qucik Client that the property id [2] contains the value of the tag, so I create a function to read specified property id. My code:
Code:
Private Sub BtnReadByPropId_Click(sender As Object, e As EventArgs) Handles btnReadByPropId.Click btnReadByPropId.Enabled = False txtLog.Text &= "------------------------------------------------------------------" & vbCrLf Try Dim value = ReadTagValueByPropertyId() txtLog.Text &= "Value: " & value.ToString() & vbCrLf Catch ex As Exception txtLog.Text &= "Error during read OPC tag values: " & ex.Message & vbCrLf If ex.InnerException IsNot Nothing Then txtLog.Text &= "InnerException: " & ex.InnerException.Message & vbCrLf End If Finally btnReadByPropId.Enabled = True End Try End Sub Public Function ReadTagValueByPropertyId() As Double Dim value As Object = Nothing Try Dim pid As New DAPropertyId(CLng(txtPropId.Text)) Using CL As New EasyDAClient() value = CL.GetPropertyValue(txtServer.Text, txtProgId.Text, txtTag.Text, pid) End Using Catch ex As OpcException txtLog.Text &= "Error during read OPC tag values: " & ex.Message & vbCrLf If ex.InnerException IsNot Nothing Then txtLog.Text &= "InnerException: " & ex.InnerException.Message & vbCrLf End If End Try If value Is Nothing OrElse IsNumeric(value) = False Then Return Nothing End If Return CDbl(String.Format(CultureInfo.CurrentCulture, "{0}", value)) End Function

The result:

The reading of the tag value works, but the read duration of 1 tag is about 40 seconds to >60 seconds. If it is >60 seconds I get timeout error.





With Kepware Quick Client I can read all tag values in 1-2 seconds:



Can you help me please why the read operation is so slow. I read only one tag in >40 seconds and in this project I need read 300 tags every minute.

Thank you!
  • Please Log in or Create an account to join the conversation.

    More
    31 Jul 2019 06:55 #7588 by SZL
    Hello,

    The timeout problem is normal I think because the OPC Server contains lot of tags and the control cannot read it inside 1 minute over network.

    So we try increase the timeout from 1 minute to 10 minute.
    Firstly we try with your Connectivity Explorer app.



    After this the control can browse all tags. It may be a coincidence (probably the tag browsing is faster second time…).

    With our application we try increase the timeout with this:
    Code:
    OpcLabs.EasyOpc.DataAccess.Engine.EasyDAClientTimeouts.Default.BrowseServers = 600000 OpcLabs.EasyOpc.DataAccess.Engine.EasyDAClientTimeouts.Default.BrowseNodes = 600000 OpcLabs.EasyOpc.DataAccess.Engine.EasyDAClientTimeouts.Default.BrowseAccessPaths = 600000 OpcLabs.EasyOpc.DataAccess.Engine.EasyDAClientTimeouts.Default.BrowseProperties = 600000

    First time, the browsing throws timeout error. Second time its working and the tag list showing.

    The error message:
    Code:
    Type: System.Runtime.InteropServices.COMException Data: HelpLink: HResult: -2146233088 (0x80131500) InnerException: OpcLabs.EasyOpc.OperationModel.OpcException: An OPC operation failure with error code -1073430527 (0xC004C001) occurred, originating from 'OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient'. The inner exception contains details about the problem. ---> System.Runtime.InteropServices.COMException: Cannot connect Data Access client (timeout). --- 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.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.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: -1073430527 HelpLink: HResult: -2146233088 (0x80131500) InnerException: System.Runtime.InteropServices.COMException (0xC004C001): Cannot connect Data Access client (timeout). Data: ErrorCode: -1073430527 HelpLink: HResult: -1073430527 (0xc004c001) InnerException: Message: Cannot connect Data Access client (timeout). Source: OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient StackTrace: TargetSite: Message: An OPC operation failure with error code -1073430527 (0xC004C001) 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.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.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.50.405.1, Culture=neutral, PublicKeyToken=6faddca41dacb409 CustomAttributes: FullyQualifiedName: C:\Windows\Microsoft.Net\assembly\GAC_64\App_Web_OpcLabs.EasyOpcClassicRaw.amd64\v4.0_5.50.405.1__6faddca41dacb409\App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll MDStreamVersion: 131072 MetadataToken: 1 ModuleHandle: System.ModuleHandle MDStreamVersion: 131072 ModuleVersionId: fb27278c-e26b-4bf6-a169-8ff35033a83c 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:



    So I search for a way to increase the control timout to 10 minute, because currently sometimes works, sometimes not.

    Thank you!
    Attachments:

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

    More
    29 Jul 2019 08:44 #7579 by support
    We do not officially support older versions.
    But anyway, there is currently no way to change the settings for the "client" object used inside the OpcBrowseControl.

    But it's not clear to me what is it that you have changed in the demo app that has helped. Maybe I am misunderstanding something. Please post
    - the precise error you were getting in the demo app
    - at which moment
    - how you have fixed it in the demo app
    - the precise error you are getting with the OpcBrowseControl.

    Thank you

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

    More
    26 Jul 2019 08:38 #7572 by SZL
    Hello, Thank you for the fast answer. Our version number is 5.30.

    With this format we have timeout problems, but in the QuickOPC demo application it works when we increase the timeout limits.

    Can you help me please how can I increase the timeout of the "OpcBrowseControl" control in my project programatically?

    Thank you!

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

    More
    26 Jul 2019 07:52 #7571 by support
    Hello.

    Which QuickOPC version are you using?

    Try this: add a node under "Any computer", and enter

    opcda://172.25.118.1/Kepware.KEPServerEX.V5

    I hope this helps

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

    More
    25 Jul 2019 13:34 #7563 by SZL
    Hello,

    We develop an application to browse OPC tags in local or remote computer.
    We use the "OpcBrowseControl" control.

    The local browsing working well, but the remote not (remote computer IP: 172.25.118.1). I try add the remote server name to the "Any computer" and "Network", but it throw errors:

    (I dont know the required format and I not found the documentation about this)


    In "Any computer" node:
    Code:
    Exceptions Type: OpcLabs.BaseLib.Browsing.BrowseException Data: HelpLink: HResult: -2146233088 (0x80131500) InnerException: OpcLabs.EasyOpc.OperationModel.OpcException: An OPC operation failure with error code -2147221005 (0x800401F3) occurred, originating from 'OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient'. The inner exception contains details about the problem. ---> System.Runtime.InteropServices.COMException: Invalid class string --- 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.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.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: -2147221005 HelpLink: HResult: -2146233088 (0x80131500) InnerException: System.Runtime.InteropServices.COMException (0x800401F3): Invalid class string Data: ErrorCode: -2147221005 HelpLink: HResult: -2147221005 (0x800401f3) InnerException: Message: Invalid class string Source: OpcLabs.EasyOpcRaw.DataAccess.RawEasyDAClient StackTrace: TargetSite: Message: An OPC operation failure with error code -2147221005 (0x800401F3) 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.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.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.50.405.1, Culture=neutral, PublicKeyToken=6faddca41dacb409 CustomAttributes: FullyQualifiedName: C:\Windows\Microsoft.Net\assembly\GAC_64\App_Web_OpcLabs.EasyOpcClassicRaw.amd64\v4.0_5.50.405.1__6faddca41dacb409\App_Web_OpcLabs.EasyOpcClassicRaw.amd64.dll MDStreamVersion: 131072 MetadataToken: 1 ModuleHandle: System.ModuleHandle MDStreamVersion: 131072 ModuleVersionId: fb27278c-e26b-4bf6-a169-8ff35033a83c 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:

    In "Network" node:
    Code:
    Exceptions Type: OpcLabs.BaseLib.Network.Management.NetworkManagementException Data: HelpLink: HResult: -2146233088 (0x80131500) InnerException: Message: The parameter is incorrect Source: OpcLabs.BaseLib StackTrace: at OpcLabs.BaseLib.Network.Management.NetworkEnum.GetServerInfos(UInt32 serverType, String domainName) at OpcLabs.BaseLib.Browsing.ComputerBrowseable.BrowseLeaves(Object parentNode, Object nodeFilter, IEnumerable`1& leaves, IEnumerable`1& exceptions) TargetSite: System.Collections.Generic.IEnumerable`1[OpcLabs.BaseLib.Network.ServerInfo] GetServerInfos(UInt32, System.String) DeclaringType: OpcLabs.BaseLib.Network.Management.NetworkEnum Module: OpcLabs.BaseLib.dll Assembly: OpcLabs.BaseLib, Version=5.50.405.1, Culture=neutral, PublicKeyToken=6faddca41dacb409 CustomAttributes: [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "OpcLabs.BaseLib.Diagnostics")] [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "OpcLabs.BaseLib.Extensions")] [System.Diagnostics.CodeAnalysis.SuppressMessageAttribute("Microsoft.Design", "CA1020:AvoidNamespacesWithFewTypes", Scope = "namespace", Target = "OpcLabs.BaseLib.Utilities")] FullyQualifiedName: C:\Windows\Microsoft.Net\assembly\GAC_MSIL\OpcLabs.BaseLib\v4.0_5.50.405.1__6faddca41dacb409\OpcLabs.BaseLib.dll MDStreamVersion: 131072 MetadataToken: 1 ModuleHandle: System.ModuleHandle MDStreamVersion: 131072 ModuleVersionId: b3f16609-ca33-4c25-a8b2-129c178603b9 Name: OpcLabs.BaseLib.dll ScopeName: OpcLabs.BaseLib.dll

    Another client, for example Kepware Quick Client can connect to the remote OPC Server from the same computer:



    Can you help me please what is the correct format or what is the problem in this case?

    Thank you!
  • Please Log in or Create an account to join the conversation.

    Moderators: supportvaclav.zaloudek
    Time to create page: 0.166 seconds