DANSrv Reference
Version Changes
Send comments on this topic.
DANSrv OPC DA .Net Server Toolkit > Version Changes

Glossary Item Box

Version 8.1
The Professional Edition now includes a version of the .NET4 generic server that works with the uaPLUS generic server DLL to allow parallel access from OPC DA and OPC UA servers.

Version 8
DANSrv V8.0 added support for Visual Studio 2015, Windows 10 and .NET 4.6.

 

Version 7
DANSrv V7.0 added support for Visual Studio 2012, Windows 8 and .NET 4.5.

The utilities are provided in a version for .NET 2/3.0/3.5 and one for .NET 4/4.5 so that development and deployment machines need only a single .NET version to be installed.
Security Issues
Newer Windows version have increasingly tighter out-of-the-box security settings. The OPC server registration requires Windows registry changes and is by default disabled.
The application needs to run in elevated administrator mode for the server registration to be allowed.
How the security is handled depends on the settings in the Windows Local Security Policy. Actions that require elevation may be declined, cause a prompt or accepted without prompt.
On development machines the Admin Approval Mode is best disabled.

Version 6
DANSrv V6.0 adds support for .NET4 and Visual Studio 2010

There is an additional version of the generic server for .NET4  (DANSrvNet4.exe)
This generic server only works with plug-in assemblies that are compiled with VS2010 for .NET4. The assembly must be named NSPLuginNet4.dll.

Visual Studio 2010 can be used to create server for .NET 4 or .NET2(3.0/3.5).
Depending on the selected target platform:
- the server plug-in assembly must be named NSPlugin.dll or NSPluginNet4.dll
- the appropriate generic server must be used, either DANSrv.exe or DANSrvNet4.exe

 

New Features

The LookupItemIDs client request handling is enhanced and works in different modes depending on the mode defined in the lookupMode argument of the GetModeDefinitions method.

Mode Handling
Generic LookupItemIDs requests are handled in the generic server. NSPlugin.dll is not involved. The generic server creates a thread that calls every 2 seconds the method GetPropertyValue() to update the value of the property item in the generic server cache.
This is how it was handled in DANSrv 5.x
GenericNoUpdate Behaves as mode "Intern" but doesn't start the property value update thread. Servers with only constant property values can prevent the update thread overhead.
PluginHandled Property items are handled much like regular items. On LookupItemIDs client requests the generic server call the plug-in method LookupItemID(). This method creates the property item by calling the generic server method AddItem(). The plug-in must update the value of this item by calling the SetItemValue() method.


The LookupItemID method is called by the generic server only when LookupMode is defined as 'PluginHandled'. If the request is invalid the method returns null. Otherwise, it creates a unique name for the property item creates the property item by calling the generic server method AddItem(). The plug-in must update the cache value of this item by calling the SetItemValue() method whenever the property value changes.

 

 

Changes

The plug-in method ValidateItems was not called in the processing of GetProperties client requests. The plug-in could therefore neither deny the request nor dynamically add the involved items.
The DANSrv V6.0 generic server calls ValidateItems with the reason code ValidateReason.GetPropertiesV3 (6).
This change has a small potential for compatibility issues, depending on how the ValidateItems() implementation handles unexpected reason codes.

The ValidateItems method is additionally called with the reason code ValidateReason.LookupItemID (7). This happens only if the plug-in defined the lookupMode as LookupMode.PluginHandled.

 

 

© 2002-2017 Copyright Advosol Inc. All Rights Reserved.