What's new in QuickOPC 2017.1

From OPC Labs Knowledge Base

Internal version number: 5.50

Key changes:

  • Live Binding for WPF


Installation and Uninstallation

  • New "Command Prompt From Here" links are now being installed into the product folder, JScript Examples in WSH, PHP Console Examples, and VBScript Examples in WSH folders. These links allow the user to quickly start a CMD window with the current directory set to the chosen place, for quick experiments and exploration.
  • The type libraries that were earlier installed under Lib subdirectory have now been moved to SDK\lib.

Component Improvements

  • Added UANetworkDiscoveryQuery object, and [I]EasyUAClient.DiscoverServersOnNetwork methods, for discovering servers on a multicast subnet using LDS-ME (this has been an experimental feature in version 2016.2).
  • Added ShortDiscoveryUrl property to EndpointDescriptor (for OPC Classic). The short string is formed by removing the CLSID part, if both the ProgID and the CLSID are present.
  • In OPC UA stack configuration, the default value for MaxArrayLength has been increased from 65535 to 655350 (ten-fold). Consequently, for counts up to several hundred thousands of items, developers will not have to resort to custom OPC UA stack configurations.

Component Improvements (COM)

  • The default COM interfaces now consistently contain the Clone method, wherever applicable.

Component Refactorings

  • Changed type of public properties derived from HashSet<> to Collection<>, in order to facilitate XAML serialization. This affects: UAEndpointDiscoveryQuery.DiscoveryUriStrings, UANetworkDiscoveryQuery.ServerCapabilityFilter, UAApplicationElement.ServerCapabilities, UAQueryServersFilter.ServerCapabilities, UACertificateAcceptancePolicy.TrustedEndpointUrlStrings (used in EasyUAAdaptableParameters.CertificateAcceptancePolicy), UAHostParameters.DiscoveryUriTemplateStrings, and UABrowseParameters.ReferenceTypeIds (here, a new UANodeIdCollection type has been introduced). The collections (as opposed to sets) allow duplicate entries, but we have made sure that duplicates are properly merged (and thus do not cause any harm) wherever the value is interpreted.

User Interface

  • Added a context menu with Reset command to all property grids in Windows Forms. This commands allows the user to reset the selected property to its initial value.
  • Added explanatory tooltips to various nodes in browse controls and dialogs.

Live Binding

  • In the Binding Collection Editor (in Windows Forms), it is now possible to view and modify the design-time properties of each binding: The name (Name) used in code to identify the object, whether a member variable will be generated for the component (GenerateMember), and the visibility level of the object (Modifiers).
  • It is now possible to "subscribe" to OPC-DA property points (DAPropertyPoint). Because OPC "Classic" properties do not support subscriptions and we do not emulate them, this operation behaves as a single "get" of the property value.
  • It is now possible to expand and edit the Point property of a binding and its sub-properties directly in the Binding Collection Editor, without necessarily having to invoke the Point Editor dialog (and switch to its Properties tab) for that. This makes the manual/bulk editing scenarios easier.

Live Binding for WPF

  • It is now possible to use the Live Binding features also in Windows Presentation Foundation (WPF) applications.

Packaging

  • For Visual C++ developers, we now install a header file with #import and #define directives referencing QuickOPC type libraries. The file name is QuickOpc.h and is located in the SDK\include subdirectory. Including this header file gives you immediate access to all types defined in the QuickOPC type libraries. It is recommended that you put #include "QuickOPC.h" directive at the beginning of your C++ files, or into your "stdafx.h" file. You may also have to either copy the file to the directory you want, or add the path to SDK\include to your Visual C++ include directories. The Visual C++ examples have been all shortened by #include-ing this file.
  • Added assemblies to support Live Binding for WPF; the main new assembly is OpcLabs.BaseLibPresentation. There are also several accompanying design-time and contract assemblies.

Documentation

  • Enhanced the documentation to describe how Live Binding can be used in WPF applications.
  • A documentation for the OpcLabs.BaseLibPresentation assembly added to the reference part of the documentation.

Examples

  • Added many C# and VB.NET examples showing the various ways in which the OPC UA node IDs can be constructed.
  • More (OPC UA) Delphi examples (earlier just in Reference) added right into the conceptual documentation.
  • Added COM example (ReadMultipleItems) in Visual C++ 6.0 (Visual Studio 6.0). See Using QuickOPC from Visual C++ 6.0 for more/related information.

Removed Parts

  • Removed the obsoleted "OPC Foundation White Papers" from the bonus material.