Professional OPC
Development Tools


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.

× If you are developing in .NET, but are using the OPC-UA (OPC Unified Architecture), please post in the QuickOPC-UA category instead.

Migrating from EasyOPC.NET 5.2 to OPC Studio 2024.1

22 Feb 2024 10:10 #12581 by support
thanks for the good news.

The actual numerical code for a Quality with WaitingForInitialData is 32.

Best regards

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

21 Feb 2024 16:48 #12580 by tlaford
Thank you for the quick reply.

I made the changes you suggested and I replaced DAQualities.WaitingForInitialData with 0, all the compile errors are gone, and the updated program seems to run fine.

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

21 Feb 2024 16:28 #12579 by support

Re 2. In newer QuickOPC versions, you cannot reference the assemblies directly and individually. You need to reference the NuGet package.


Re 3. DAQualities.WaitingForInitialData

Re 4. Instead of "If (e.ErrorCode <> 0) Then", use "If (Not e.Succeeded) Then"

Re 1. The auto-subscribing has been reworked, and there is no direct equivalent for UpdateRates.ReadAutomatic / WriteAutomatic. Most likely you can leave this part out completely. More info:

Best regards

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

21 Feb 2024 16:12 #12578 by tlaford
I am trying to migrate my code from an antique 2012 version (EasyOPC.NET 5.2) to the modern version (OPC Studio 2024.1) and I could use a little help.

My project is written using Visual Studio 2017 in Visual Basic with .Net Framework 4.7.2. It subscribes to a number of tags on multiple machines and when a tag changes value the program receives a EasyDAItemChangedEvent

I have removed the reference to the old OpcLabs.EasyOpcClassic and added references to the following libraries:
  • OpcLabs.BaseLib
  • OpcLabs.EasyOpcClassic
  • OpcLabs.EasyOpcClassicComponents
  • OpcLabs.EasyOpcClassicCore

I have changed the OpcLabs.EasyOpc.DataAccess.EasyDAItemChangedEventArgs to OpcLabs.EasyOpc.DataAccess.OperationModel.EasyDAItemChangedEventArgs

I updated Timeouts and HoldPeriods from EasyDaClient to EasyDaClient.InstanceParameters

I updated State and ItemDescriptor from EasyDAItemChangedEventArgs to EasyDAItemChangedEventArgs.Arguments

But the following errors still remain:
  1. UpdateRates is not a member of EasyDaClient
  2. Reference required to assembly 'Microsoft.Extensions.Configuration.Abstractions, Version=, ...' containing the type 'IConfiguration'.
  3. WaitingForInitialData is not a member of DAQuality
  4. ErrorCode is not a member of EasyDAItemChangedEventArgs

Here are some code snippets where the errors occur:
        Me.OpcConnection = New OpcLabs.EasyOpc.DataAccess.EasyDAClient(Me.components)
        Me.OpcConnection.UpdateRates.ReadAutomatic = 10000
        Me.OpcConnection.UpdateRates.WriteAutomatic = -1
        Private Quality_ As DAQuality
        Quality_ = DAQuality.WaitingForInitialData
Private Sub ProcessItemChanged(ByVal e As OpcLabs.EasyOpc.DataAccess.OperationModel.EasyDAItemChangedEventArgs)
    ' Display any errors
    If (e.ErrorCode <> 0) Then
        EventLog("OPC ERROR: " & e.Arguments.State.ToString() & " - " &
                 e.Arguments.ItemDescriptor.ItemId & " " &
    End If

Could someone offer any insight into how to handle these remaining compile errors?

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

Moderators: support
Time to create page: 0.063 seconds