For easy comprehension, there is just one communication object that you need to start with, for each OPC specification:
You achieve all OPC communication tasks by calling methods on one of these objects. The remainder of this paragraph describes the use of EasyDAClient object; the steps for EasyAEClient or EasyUAClient object are similar.
In order to be able to use one of these objects, you need to instantiate it first.
In QuickOPC “Classic” and QuickOPC-UA, there are two methods that you can use:
Note: In addition, there is a static Create() method on each EasyXXClient or EasyXXSubscriber class. This methods works the same as parameter-less constructor. For example (in C#), EasyUAClient.Create() is the same as new EasyUAClient().
For QuickOPC-COM and QuickOPC-UA for COM, the following table contains information needed to instantiate the objects.
Class Name | CLSID | ProgID |
EasyAEClient | 3643545B-221F-4960-BF47-8A4DDEC81A67 | OpcLabs.EasyOpc.AlarmsAndEvents.EasyAEClient |
EasyDAClient | 6B0B5307-BCB6-4953-A832-BFCF952F7561 | OpcLabs.EasyOpc.DataAccess.EasyDAClient |
EasyUAClient | 54AFB0EA-9809-4D1D-AFBE-0EC164C59A45 | OpcLabs.EasyOpc.UA.EasyUAClient |
EasyUASubscriber | EDC1F10E-3FC6-4604-9BC6-4FFF579D271A | OpcLabs.EasyOpc.UA.PubSub.EasyUASubscriber |
As described in the “Naming Conventions”, in QuickOPC-COM, all objects have ProgIDs that are identical to their qualified type names in .NET. For example, the ProgID of the main EasyUAClient is therefore “OpcLabs.EasyOpc.UA.EasyOpcUA”.
For COM development, CLSIDs of all objects and IIDs of all interfaces can also be found in the Reference documentation (look for the GuidAttribute on the classes and interfaces).