OTX-Runtime for DotNet
|
|
The following sections describes how the OTX-Runtime API can be installed at different target systems.
The following sections lists all delivered files and folders. The value of the Needed column is based on the following assumption:
Note (Java API only): Due to security restrictions in the OSGI framework, which prevent an EXE from being started, the Java OTX Runtime API cannot be used. In this case e.g. the C++ API in RAW-IPC mode can be used.
The software is delivered as ZIP containers including APIs for C++, DotNet and Java as well as some helper programs. File names:
OpenTestSystem.Otx.Runtime.Api_Win32_Version.zip
containing the 32 bit version for windowsOpenTestSystem.Otx.Runtime.Api_Win64_Version.zip
containing the 64 bit version for windowsNote: The OTX-DiagManager API is part of the distribution and does not have to be installed separately.
Name | Version | Class | File to copy |
---|---|---|---|
VW-MCD | 9.0 to 17.0 | VwMcdDiagRuntimeSystem | McdKernel_vc120.dll or McdKernel_vc120_64.dll |
VW-MCD | 17.50 | VwMcdDiagRuntimeSystem | McdKernel_vc142.dll or McdKernel_vc142_64.dll |
VW-MCD (SP) | 9.0 to 17.0 | VwMcdSPDiagRuntimeSystem | McdKernel_vc120.dll or McdKernel_vc120_64.dll |
VW-MCD (SP) | 17.50 | VwMcdSPDiagRuntimeSystem | McdKernel_vc142.dll or McdKernel_vc142_64.dll |
Important: The diagnostic runtime system is not part of the delivery! Therefore, the user is responsible that it is installed, configured and accessible.
The following table contains the folder structure of the deliverables.
Note: The folder list does not claim to be complete! It should inform the user about the meaning of the individual folders.
Folder | Needed | Description |
---|---|---|
bin/ | Yes | Folder containing all binary files |
bin/resources/ | No | Folder containing all resource files like images for the sample program. Needed if the sample program should be used. |
include/ | No | Folder containing all C++ header files. Needed for design time only. |
lib/ | No | Folder containing all C++ lib files. Needed for design time only. |
html/ | No | Folder containing developer reference as a web page. To open the web page, execute containing index.html. |
The following table contains all files for the OTX-Runtime API.
Note: The file list does not claim to be complete! It should inform the user about the meaning of the individual files.
Important: We can only guarantee error-free execution if all files supplied are used! If files are removed, it is the responsibility of the user to ensure that it does not affect execution.
File | Needed | Description |
---|---|---|
OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Cpp.exe | No | Sample application for OTX-Runtime API with GUI in C++ |
OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Console.exe | No | Sample application for OTX-Runtime API as console application without GUI in C++ |
botan.dll | Yes | 3rd party library for cryptography |
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.dll | No | Adapter for C++ runtime API to default custom implementations (Exchangeable by the user) also necessary for OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication |
lua-5.3.5.dll | Yes | 3rd party library for Lua execution |
llthreads2.dll | Yes | 3rd party library for Lua execution threading |
OpenTestSystem.Lua.Adapter.dll | Yes | Middleware between Lua and OTX-Runtime functions |
OpenTestSystem.Otx.Common.dll | Yes | Common OTX functions |
OpenTestSystem.Otx.Runtime.dll | Yes | OTX-Runtime |
OpenTestSystem.Otx.Runtime2.Api.dll | Yes | OTX-Runtime API for C++ |
OpenTestSystem.Otx.DiagManager.Common.dll | Yes | DiagManager common functions |
OpenTestSystem.Otx.DiagManager.OtxDiagApi.dll | Yes | DiagManager OtxDiagApi |
OpenTestSystem.Otx.DiagManager.Client.dll | Yes | DiagManager Client |
OpenTestSystem.Otx.Runtime2.Runner.exe | Yes | OTX runner process, if the OTX runtime is inside a separate process. Not needed for transport layer RAW. |
PocoFoundation.dll | Yes | 3rd party library for general purposes. |
PocoZip.dll | Yes | 3rd party library for ZIP file handling in C++, e.g. for PTX files |
TestExecution.exe | No | Application to execute OTX unit tests with GUI in C++ |
TestExecution.Console.exe | No | Application to execute OTX unit tests as console application in C++ |
xerces-c_3_2.dll | Yes | 3rd party library for XML parser, DOM, validator,... |
xqilla23.dll | Yes | 3rd party library for XML's XPath |
The following table contains all additional files for the usage of the OTX-Runtime API for DotNet.
File | Needed | Description |
---|---|---|
OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.DotNet.exe | No | Sample application for OTX-Runtime API with GUI in DotNet |
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.DotNet.dll | No | Adapter for C++ runtime API to default custom implementations (Exchangeable by the user) also necessary for OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.DotNet |
Google.Protobuf.dll | Yes | 3rd party library for Google Protocol Buffers for DotNet |
SharpCompress.dll | Yes | 3rd party library for ZIP file handling, e.g. for PTX files, in DotNet |
log4net.dll | Yes | 3rd party library for logging |
OpenTestSystem.Common.dll | Yes | Common functions, used for Protobuf implementation |
OpenTestSystem.Otf.Model.dll | Yes | OtxSearchPath used in OpenTestSystem.Otx.Runtime2.Api.DotNet.dll |
OpenTestSystem.Otx.Runtime2.Api.DotNet.dll | Yes | OTX-Runtime API for DotNet |
TestExecutionDotNet.exe | No | Application to execute OTX unit tests with GUI in DotNet |
DevComponents.DotNetBar2.dll | No | 3rd party library used by TestExecutionDotNet.exe |
System.Text.Encoding.CodePages.dll | Yes | 3rd party library used by SharpCompress.dll |
System.Memory.dll | Yes | 3rd party library used by SharpCompress.dll |
System.Configuration.ConfigurationManager.dll | Yes | 3rd party library used by log4net.dll |
System.Buffers.dll | Yes | 3rd party library used by Google.Protobuf.dll |
The following table contains all additional files for the usage of the OTX-Runtime API for Java.
File | Needed | Description |
---|---|---|
bcprov-jdk15on-157.jar | Yes | 3rd party library for cryptography |
Google.Protobuf.dll | No | 3rd party library for Google Protocol Buffers |
gson-2.2.4.jar | Yes | 3rd party library for converting string to JSON and vice-versa |
jna-5.5.0.jar | Yes | 3rd party library for creating pipe listener |
jna-platform-5.5.0.jar | Yes | 3rd party library for creating pipe listener |
log4j-api-2.17.1.jar | Yes | 3rd party library for logging |
log4j-core-2.17.1.jar | Yes | 3rd party library for logging |
OpenTestSystem.Common.dll | No | Common functions, used for Protobuf implementation |
OpenTestSystem.Custom.Default.Implementation.DotNet.dll | No | Default custom implementation in DotNet. OTX-Runtime API for DotNet directly use this without IPC. |
OpenTestSystem.Custom.Default.Implementation.DotNet.Runner.exe | No | Runner process for default custom implementation |
OpenTestSystem.Otx.Common.jar | Yes | Common functions, used for Protobuf implementation |
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.Java.jar | No | Adapter for Java runtime API to default custom implementations (Exchangeable by the user) also necessary for OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Java |
OpenTestSystem.Otx.Runtime2.Api.Java.jar | Yes | OTX-Runtime API for Java |
OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Java.jar | No | Sample application for OTX-Runtime API with GUI in Java |
protobuf-java-3.10.0.jar | Yes | 3rd party library for Google Protocol Buffers |
The following table contains all additional files the usage of the OTX-Runtime API (C++, DotNet and Java) for diagnostic communication via OTX-DiagManager.
File | Needed | Description |
---|---|---|
bcprov-jdk15on-157.jar | Yes | 3rd party library for cryptography |
botan.dll | Yes | 3rd party library for cryptography |
DiagManagerSample.exe | No | Utility to start the DiagManager server process with IPC |
Google.Protobuf.dll | Yes | 3rd party library for Google Protocol Buffers for DotNet |
jna-5.5.0.jar | Yes | 3rd party library for creating pipe listener |
jna-platform-5.5.0.jar | Yes | 3rd party library for creating pipe listener |
log4j-api-2.17.1.jar | Yes | 3rd party library for logging for Java |
log4j-core-2.17.1.jar | Yes | 3rd party library for logging for Java |
OpenTestSystem.Otx.DiagManager.Client.dll | Yes | DiagManager Client |
OpenTestSystem.Otx.DiagManager.Client.DotNet.dll | Yes | DiagManager DotNet Client |
OpenTestSystem.Otx.DiagManager.Client.Java.jar | Yes | DiagManager Java Client |
OpenTestSystem.Otx.DiagManager.Common.dll | Yes | DiagManager common functions |
OpenTestSystem.Otx.DiagManager.Common.DotNet.dll | Yes | DiagManager common functions |
OpenTestSystem.Otx.DiagManager.Common.Java.jar | Yes | DiagManager common functions |
OpenTestSystem.Otx.DiagManager.CommandProcessor.dll | Yes | DiagManager default CommandProcessor (Exchangeable by the user) |
CppRuntimeApi/bin/OpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.dll | No | DiagRuntimeSystem which supports VW-MCD 9.0 to 17.0 (Exchangeable by the user) |
CppRuntimeApi/bin/OpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.SiemensMcd.dll | No | DiagRuntimeSystem which supports Siemens-MCD (Exchangeable by the user) |
CppRuntimeApi/bin/OpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.VwMcd90SP.dll | No | DiagRuntimeSystem which supports Shared Pointer VW-MCD 9.0 to 17.0 (Exchangeable by the user) |
CppRuntimeApi/bin/OpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.VwMcdSP_VC142.dll | No | DiagRuntimeSystem which supports Shared Pointer VW-MCD 17.50 or later (Exchangeable by the user) |
CppRuntimeApi/bin/OpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.VwMcd_VC142.dll | Yes | DiagManager default DiagRuntimeSystem which supports VW-MCD 17.50 or later (Exchangeable by the user) |
OpenTestSystem.Otx.DiagManager.OtxDiagApi.dll | Yes | DiagManager OtxDiagApi in C++ |
OpenTestSystem.Otx.DiagManager.OtxDiagApi.DotNet.dll | Yes | DiagManager OtxDiagApi in DotNet |
OpenTestSystem.Otx.DiagManager.OtxDiagApi.Java.jar | Yes | DiagManager OtxDiagApi in Java |
OpenTestSystem.Otx.DiagManager.NoneOtxDiagApi.dll | Yes | DiagManager NoneOtxDiagApi in C++ |
OpenTestSystem.Otx.DiagManager.NoneOtxDiagApi.DotNet.dll | Yes | DiagManager NoneOtxDiagApi in DotNet |
OpenTestSystem.Otx.DiagManager.NoneOtxDiagApi.Java.jar | Yes | DiagManager NoneOtxDiagApi in Java |
OpenTestSystem.Otx.DiagManager.SystemApi.dll | Yes | DiagManager SystemApi in C++ |
OpenTestSystem.Otx.DiagManager.SystemApi.DotNet.dll | Yes | DiagManager SystemApi in DotNet |
OpenTestSystem.Otx.DiagManager.SystemApi.Java.jar | Yes | DiagManager SystemApi in Java |
OpenTestSystem.Otx.DiagManager.Server.dll | Yes | DiagManager Server |
PocoFoundation.dll | Yes | 3rd party library for general purposes. |
protobuf-java-3.10.0.jar | Yes | 3rd party library for Google Protocol Buffers for Java |
The following table contains all additional files necessary for custom implementations used with the OTX-Runtime API (C++, DotNet and Java) like screens or access to device driver. The listed files are not necessary if own custom implementations will used.
File | Needed | Description |
---|---|---|
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.dll | Yes | Adapter for C++ runtime API to default custom implementations (Exchangeable by the user) |
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.Java.jar | Yes | Adapter for Java runtime API to default custom implementations (Exchangeable by the user) |
OpenTestSystem.Otx.Runtime2.Api.Custom.Default.DotNet.dll | Yes | Adapter for DotNet runtime API to default custom implementations (Exchangeable by the user) |
Newtonsoft.Json.dll | No | 3rd party library for default custom implementation (HTML screens) |
OpenTestSystem.Custom.Default.Implementation.DotNet.dll | Yes | Default custom implementation in DotNet. OTX-Runtime API for DotNet directly use this without IPC. |
OpenTestSystem.Custom.Default.Implementation.DotNet.Runner.exe | Yes | Runner process for default custom implementation. Not needed for OTX runtime in DotNet. |
OpenTestSystem.Common.dll | Yes | Common functions, used for Protobuf implementation |
websocket-sharp.dll | No | 3rd party library for default custom implementation (HTML screens) |
Google.Protobuf.dll | Yes | 3rd party library for Google Protocol Buffers |
Microsoft.Web.WebView2.Core.dll | No | 3rd party library for default custom implementation (HTML screens) |
Microsoft.Web.WebView2.WinForms.dll | No | 3rd party library for default custom implementation (HTML screens) |
WebView2Loader.dll | No | 3rd party library for default custom implementation (HTML screens) |
The following table contains all additional files necessary for diagnostic communication. These files will not delivered! They must be installed in a separate way.
File | Needed | Description |
---|---|---|
McdKernel_vc120.dll | Yes | VW-MCD Diagnostic Runtime System 90 XXX |
McdKernel_vc142.dll | Yes | VW-MCD Diagnostic Runtime System 17.50 XXX |
msvcp120.dll | Yes | 3rd party library for Visual C++ runtime |
msvcr120.dll | Yes | 3rd party library for Visual C++ runtime |
msvcp71.dll | Yes | Module containing link libraries of instructions to the "Microsoft Runtime C Library" |
msvcr71.dll | Yes | Module containing standard C library functions such as printf, memcpy, and cos. It is a part of the Microsoft C Runtime Library |
The following sections lists all delivered files and folders. The value of the Needed column is based on the following assumption:
The software was compiled as follows:
Build for x86:
Build for 64 bit:
The software is delivered as ZIP containers including some helper programs. File names:
OpenTestSystem.Otx.Runtime.Api_Linux32_Version.zip
containing the 32 bit version for LinuxOpenTestSystem.Otx.Runtime.Api_Linux64_Version.zip
containing the 64 bit version for LinuxFor the automatic installation execute the installers. For the manual installation copy the content of the ZIP container files to an arbitrary location.
Folder structure of the deliverables.
Note: The folder list does not claim to be complete! It should inform the user about the meaning of the individual folders.
Folder | Needed | Description |
---|---|---|
bin/ | Yes | Folder containing all binary files |
include/ | No | Folder containing all C++ header files. Needed for design time only. |
html/ | No | Folder containing developer reference as a web page. To open the web page, execute containing index.html. |
The following table contains all files for the OTX-Runtime API.
Note: The file list does not claim to be complete! It should inform the user about the meaning of the individual files.
Important: We can only guarantee error-free execution if all files supplied are used! If files are removed, it is the responsibility of the user to ensure that it does not affect execution.
File | Needed | Description |
---|---|---|
OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Console | No | Sample application for OTX-Runtime API as console application without GUI |
libOpenTestSystem.Otx.Runtime2.Api.Custom.Default.so | No | Needed for OpenTestSystem.Otx.Runtime2.Api.ReferenceApplication.Console Adapter for C++ runtime API to default custom implementations (Exchangeable by the user) |
libbotan.so | No | 3rd party library for socket communication. Not needed for transport layer RAW. |
liblua-5.3.5.so | Yes | 3rd party library for OTX execution |
llthreads2.so | Yes | 3rd party library for OTX execution threading |
libOpenTestSystem.Lua.Adapter.so | Yes | OTX runtime format handling |
libOpenTestSystem.Otx.Common.so | Yes | Common OTX functions |
libOpenTestSystem.Otx.Runtime.so | Yes | OTX runtime |
libOpenTestSystem.Otx.Runtime2.Api.so | Yes | OTX-Runtime API |
libOpenTestSystem.Otx.DiagManager.Client.so | Yes | DiagManager Client |
libOpenTestSystem.Otx.DiagManager.Common.so | Yes | DiagManager common functions |
libOpenTestSystem.Otx.DiagManager.OtxDiagApi.so | Yes | DiagManager OtxDiagApi |
libPocoFoundation.so.64 | Yes | 3rd party library for general purposes like XML, cryptography etc. Number 64 is its version. |
libPocoZip.so.64 | Yes | 3rd party library for ZIP file handling, e.g. for PTX files. Number 64 is its version. |
OpenTestSystem.Otx.Runtime2.Runner | No | OTX runner process, if the OTX runtime is inside a separate process. Not needed for transport layer RAW. |
TestExecution.Console | No | Application to execute OTX unit tests as console application |
libxerces-c-3.2.so | Yes | 3rd party library for XML parser, DOM, validator,... |
libxqilla.so.2.4.0 | Yes | 3rd party library for XML's XPath |
The following table contains all additional files the usage of the OTX-Runtime API for diagnostic communication via OTX-DiagManager.
File | Needed | Description |
---|---|---|
libbotan.so | Yes | 3rd party library for cryptography |
libOpenTestSystem.Otx.DiagManager.Client.so | Yes | DiagManager Client |
libOpenTestSystem.Otx.DiagManager.CommandProcessor.so | Yes | DiagManager default CommandProcessor (Exchangeable by the user) |
libOpenTestSystem.Otx.DiagManager.Common.so | Yes | DiagManager common functions |
libOpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.VwMcd.so | Yes | DiagManager default DiagRuntimeSystem which supports VW-MCD (Exchangeable by the user) |
libOpenTestSystem.Otx.DiagManager.DiagRuntimeSystem.VwMcdSP.so | No | DiagRuntimeSystem which supports Shared Pointer VW-MCD (Exchangeable by the user) |
libOpenTestSystem.Otx.DiagManager.OtxDiagApi.so | Yes | DiagManager OtxDiagApi |
libOpenTestSystem.Otx.DiagManager.NoneOtxDiagApi.so | Yes | DiagManager NoneOtxDiagApi |
libOpenTestSystem.Otx.DiagManager.SystemApi.so | Yes | DiagManager SystemApi |
libOpenTestSystem.Otx.DiagManager.Server.so | Yes | DiagManager Server |
libPocoFoundation.so.64 | Yes | 3rd party library for general purposes like XML, cryptography etc. Number 64 is its version. |
The following table contains all additional files necessary for custom implementations like screens or access to device driver. The listed files are not necessary if own custom implementations will used.
File | Needed | Description |
---|---|---|
libOpenTestSystem.Otx.Runtime2.Api.Custom.Default.so | Yes | Adapter for runtime API to custom implementations (Exchangeable by the user) |