ATEasy is provided with several examples that can be used to see how to implement various applications and features as required. This topic will describe briefly the available examples provided in the ATEasy Examples folder. You can load the examples described here by opening one of the workspace files in that folder as described here:
Workspace File |
Description |
Examples.wsp |
Workspace file for all example projects. |
Basic.wsp |
Workspace file for all Language, Forms and Test Executive projects. |
Communication.wsp |
Workspace file for ComChat and WsChatMT projects. |
Excel.wsp |
Workspace file for Excel project. |
ATEasy2.wsp |
Workspace file for ATEasy2 examples. |
Other workspace files and examples projects may be available in that folder.
The following examples are provided; additional examples may be available, see the ATEasy examples folder:
This example demonstrates the use and programming of databases using a Microsoft ADO Active Data Objects ActiveX library. The example creates, reads and writes a data base, tables, and records. The example is using Microsoft Access and can be easily changed to use any data base format that has ODBC driver. You must install the Microsoft ActiveX Data Objects 2.8 Library from www.microsoft.com.
Files included:
● AdoDB.prj
● AdoDB.prg
This example demonstrates ATEasy support for IEEE Standard 1671- Automatic Test Markup Language (ATML) for Exchanging Automatic Test Equipment and Test Information via XML support. The support is provided using the ATEasy ATML.drv. The example generates ATML Test Results (.xml file) from an ATEasy program, ATML Test Description (.xml file) from an ATEasy program. It also transforms ATML Test Results to formatted test log using Style sheets (XSL files): AtmlToText.xsl, AtmlToHtml.xsl or AtmlToHtmlStyle1.xsl.
Please also refer to ATML standard IEEE 1671 - http://grouper.ieee.org/groups/scc20/tii/ .
Files included:
● ATML.prj
● ATML.prg
● ATML.sys
● ATML.drv
● XSD files (schema):
● Common.xsd (published by IEEE 1671)
● TestDescription.xsd (published by IEEE 1671)
● TestResults.xsd (published by IEEE 1671)
● XSL files (style sheet):
● ATMLtoText.xsl - TestResults (xml) - > txt files (similar to ATEasy Text log)
● ATMLtoHtml.xsl - TestResults (xml) - > HTML log files (similar to ATEasy HTML log) files
● ATMLtoHtmlStyle1.xsl - TestResults (xml) - > HTML files (similar to NI TestStand HTML log)
● ATMLtoPgt.xsl - TestResults (xml) - > ATEasy text program pgt files.
This example demonstrates the use and programming of COM or serial ports. The application creates a window that is used to type text used to send to a COM port. Any data received from the port is appended and displayed in the window. The example uses ATEasy COM interrupts to display the data received back. The example also shows how to read and write from Windows INI files using windows API.
Files included:
● ComChat.prj - project files for COM port communication
● ComChat.sys - system file for ComChat application
● ComChat.drv - contains a terminal-like application to communicate
This example demonstrates how to write DLL using Visual Studio (C) and use it from ATEasy. Two DLLs are provided with this example. The first, written in C with Microsoft Visual Studio (dll.dll) . The second DLL (ATEasyDll.dll) is written using ATEasy and sources are provided in a separate ATEasy project (ATEasyDll.prj). The provided program contains several tests that call DLL functions with various parameter types.
Files included:
● Dll.prj - project file for the Dll example
● Dll.prg - example of using the provided Dll.DLL
● DLL Sources and files:
● .\Dll\Dll.dll - the compiled DLL example.
● .\Dll\Dll.dsp - VC++ v6.0 project file for the provided DLL
● .\Dll\Dll.cpp - Main DLL source file
● .\Dll\Dll.h - main DLL header file
● .\Dll\StdAfx.cpp - used to build a pre-compiled header for VC++ 6.0
● .\Dll\StdAfx.h - used to build a pre-compiled header for VC++ 6.0
● ATEasyDll example files (see bellow)
This example demonstrates how to create an ATEasy DLL (ATEasyDll.dll) and use it from ATEasy and from other languages such as C and VB. This project contains a driver that includes several exported functions, thus illustrating how to export functions via ATEasy DLL. The example includes three additional projects that show how to call the ATEasy DLL from Microsoft Visual Basic application (ATEasyDllVb.exe), Microsoft Visual C project (ATEasyDllC.exe) and ATEasy application (see DLL example).
Files included:
● ATEasyDLL.prj - project file for the ATEasyDLL example
● ATEasyDLL.sys - system file for the example
● ATEasyDLL.drv - driver contains the exported function used by VB/C projects
● DLL example files (see above)
● ATEasyDll.sln - Visual Studio solution contains both projects (VB/C)
● ATEasyDllVb.exe - example showing how to use the ATEasy DLL from Visual Basic
● .\ATEasyDll\ATEasyDll.vb - generated by ATEasy using the Export command on the ATEasyDll.prj
.\ATEasyDll\ATEasyDllVb.vbproj - Visual Studio 2005 VB project
.\ATEasyDll\My Project - various files used by Visual Basic project
.\ATEasyDll\ATEasyDllVb.vb - main Form
.\ATEasyDll\ATEasyDllVb.Designer.cv - Main Form
.\ATEasyDll\ATEasyDllVb.resx - main Form resources
● ATEasyDllC.exe - example showing how to use the ATEasy DLL from C
● .\ATEasyDll\ATEasyDll.h - generated by ATEasy using the Export command on the ATEasyDll.prj
.\ATEasyDll\ATEasyDllC.vcproj - Visual Studio 2005 C project
\ATEasyDll\ATEasyDllC.cpp
.\ATEasyDll\stdafx.cpp
.\ATEasyDll\stdafx.h
This example showing how to use the DebugOutput driver used by application to trace application events, code execution and trace calls to a text file.
Files included:
● DebugOutput.prj
● DebugOutput.prg
● DebugOutput.sys
● DebugOutput.drv
This example demonstrates how to write and use a .Net assembly classes and how to use the classes from ATEasy. The assembly is created using Microsoft Visual Studio .NET using C# programming language. The provided program contains several tests that create and use the various exported classes in the .NET assembly with various parameter types. You must have the Microsoft .NET framework installed in your computer. Examples include a c# assembly source code, and ATEasy examples for various .Net features, such as creating objects, constructors, overloading, late and early bind objects, generics, examples for collections, .Net control, and more.
Files included:
● DotNet.prj
● DotNet.prg
● DotNet assembly source files (in the Examples\DotNet folder): DotNet.dll, DotNet.dsp, DotNet.cs
This example demonstrates how to use Microsoft Excel using ActiveX/COM and DDE (example requires that you will have Excel installed in your machine). The example creates an excel workbook with two spreadsheets, the first spreadsheet contains data and the second contains a chart that plots the data from the first sheet. The example shows three ways of implementing this:
● The first task, first test is using the Excel COM object using late binding.
● The first task, second test is using the Excel COM type library using early binding.
● Second task, implement the example using ATEasy DDE functions.
You must have Microsoft Excel installed on your computer for this example to run.
Files included:
● Excel.prj - project file for the excel example
● Excel.prg - EXCEL using OLE Automation, Type Libraries and DDE
This example demonstrates how to use Microsoft Excel spreadsheet to load external test parameters such as Min/Max to your program. An additional string parameter named Param is also passed into the program test. The parameters are read and set by the EXCELTESTS driver that has a ReadTestParametersFile command. The command reads the spreadsheet and sets the program tests to the new test requirements (min/max), the Param parameter is stored in the test.tag and is used in this example as the value of the test result.
You must have the Microsoft Excel installed in your computer for this example to run.
Files included:
● ExcelTestParameters.prj - project file for the example
● ExcelTestParameters.prg - EXCEL using OLE Automation, Type Libraries and DDE
● ExcelTestParameters.sys - system file
● ExcelTestParameters.drv - Driver to read the excel file and set its parameters to the current tests
● Excel.drv - Excel driver
● TestExec.drv - Test executive
This example demonstrates the use of the fault analysis driver (FaultAnalysis.drv) along with the TestExec.drv and Profile.drv. The example contains a program with dummy tests and preset test results set inside the tests. A condition file (FaultAnalysis.cnd) used by the Fault Analysis driver contains conditions that can be analyzed, displayed, and printed to the test log at the end of the run of the program.
Files included:
● FaultAnalysis.prj
● FaultAnalysis.prg
● FaultAnalysis.sys (contains the FaultAnalysis.drv, Profile.drv and TestExec.drv)
● FaultAnalysis.cnd
This example demonstrates GPIB programming and how to build a GPIB interface instrument driver. The example uses a Fluke 8840A digital multimeter. The example demonstrates the use of IO Tables, Commands, GPIB interface and programming using IO Tables or using the internal library GPIB functions.
Files included (in the Drivers folder):
● Fl884x.prj - project file for the forms example
● Fl884x.prg - using theFl884x.drv
● Fl884x.sys
● Fl884x.drv - Fluke 8840aA DMM driver
This example demonstrates how to create and use ATEasy's Forms. The example is divided to tests each creates a different form with different sets and controls and menus.
Files included:
● Forms.prj - project file for the forms example
● Forms.prg - form programming
This example demonstrates the use of the Marvin Test Solutions Hardware Access Driver (HW). The HW driver features can be accessed from the Windows Start, MarvinTest, HW menu in the taskbar. The example shows how to read the computer PCI bus configuration and resources. The HW driver can be used to write prototype driver and to test PCI/PXI/ISA boards.
Files included:
● HW.prj
● HW.prg
● HW.sys (uses HW.drv)
This Example demonstrates Function Panel driver for DMM loaded with the HP34401A digital multi-meter driver from NI (National Instruments) .fp file. It contains a program utilizing FP functions.
Files included:
● Hp34401aFP.prj
● Hp34401a-FP.prg
● Hp34401a-FP.sys
● Hp34401a-FP.drv
This example demonstrates the creation and use of IO Tables and the File driver interface .The example driver IoTables.drv contains many IO tables with different operations and modes. The example uses a temporary file to perform the input and output operations.
Files included:
● IoTables.prj - project files for IO Tables example
● IoTables.prg - sample if using the IoTables driver
● IoTables.sys - system file for IoTables application
● IoTables.drv - contains a file based driver with IO Table example
This example demonstrates using the standard IVI-C and IVI-COM class DMM drivers. The example contains two tasks; the IVI-C task requires installing National Instrument driver for HP34401A while the IVI-COM task requires the Agilent driver. You will need to download and install the drivers from these vendors. VISA resource manager also needs to be configured with the DMM logical name before using the example.
Files included:
● IviDmm.prj
● IviDmm.prg
● IviDmm.sys
● IviDmm.drv
This example demonstrates using and calling LabVIEW VI and LLB files from ATEasy.. The example program contains procedures generated by importing ViExamples.llb VIs to ATEasy using the Insert LabVIEW VIs command. The example requires National Instruments LabVIEW 7.0 run-time (www.ni.com) installed on your computer (ATEasy will work with LabVIEW v6.0 or above).
Files included:
● LabVIEW.prj
● LabVIEW.prg
● ViExamples.llb
This example demonstrates the ATEasy programming language. The examples contains several tasks to demonstrate Control statements, expressions and assignments, user defined procedures, using variants variables, internal library, using DLLs, using the log window and customizing the log output, interrupts, multi-threading, conditional compilation and error and exception handling.
Files included:
● Language.prj - project file for the language example
● Language.prg - programming language features
This example demonstrates how to use the Windows Multimedia timers to perform 1ms accurate timing events. The example is provided with DLL sources that can serve as a template for an application that requires performing operations in an accurate timing manner.
Files included:
● MMTimer.prj - project files for Multi-Media timers example
● MMTimer.prg - sample if using the MMTimer
● ..\MMTimer\MMTimer.dll - the compiled DLL example
● ..\MMTimer\MMTimer.dsp - VC++ v6.0 project file for the provided DLL
● ..\MMTimer\MMTimer.cpp - Main DLL source file
● ..\MMTimer\MMTimer.h - main DLL header file
● ..\MMTimer\StdAfx.cpp - used to build a precompiled header for VC++ 6.0
● ..\MMTimer\StdAfx.h - used to build a pre-compiled header for VC++ 6.0
This example demonstrates ATEasy's program, system, and driver module events. Running or using the debug command on this example will generate trace output from each of the ATEasy's module event procedures, which shows the sequence in which these events are called by ATEasy.
Files included:
● ModuleEvents.prj - project files for the ModuleEvents example
● ModuleEvents.prg - sample test program
● ModuleEvents.sys - sample test system
● ModuleEvents.drv - sample driver
A complete text editor with MDI user interface (Multi Document Interface) implemented with ATEasy. This example is provided to show how to use the MDI user interface, MDI Form, MDI Child Form, AMenu, AToolbar, ACommonDialog (file open, save and print, font selection), AImageList, ATimer and more.
Files included:
● MultiPad.prj
● MultiPad.sys
● MultiPad.drv
This example is provided as a reference to the files created in this manual. It contains all the examples created in the ATEasy getting started manual.
Files included:
● MyProject.prj - project files for the Getting Started Manual samples
● MyProgram.prg - sample test program
● MySystem.sys - sample test system
● MyDMM.drv - sample driver for Hp34401
● MyRELAY.drv - sample driver for GX6138
This example is provided as a tool to diagnose memory, threads or file handle leaks created by calls to external libraries such as DLLs. .Net or COM. The example is using the ProcessDiagnostics.drv driver provided with ATEasy. The driver can report the current process memory consumption, handles count, thread count, modules, and CPU usage.
Files included:
● ProcessDiagnostics.prj
● ProcessDiagnostics.prg
● ProcessDiagnostics.sys
● ProcessDiagnostics.drv
This example shows how to create profile programmatically and dynamically. First it selects the second profile of the given profile file, Profile.prf in the ATEasy Examples folder. When the Test Executive driver displays the selected profile in its tree view, you can run the profile. At the end of a program run, it asks you to perform its diagnostics if there are any failed tests - upon which if you respond Yes, then it creates a diagnostic profile and a file, "Diagnostics.prf" in the current folder and runs it. The newly created profile includes all failed tests.
Files included:
● Profile1.prg
● Profile2.prg
● Profile.sys
● Profile.drv
● TestExec.drv
This example shows how to use or run Python script from ATEasy. The example uses the ATEasy python driver that uses the embedded python DLL to execute scripts, call functions, pass parameters and more. The example and driver is based on Python 3.12. You must install the Python before running the example from https://www.python.org/downloads/windows/
Files included:
● Python.prg
● Python.sys
● Python.drv
This example shows how to use ATEasy simulation. Simulation is a powerfull tool allowing you to run your application with no or partial hardware. You can simulate any procedure or code included in your application to analyze your application logic, debug, and measure performance. Various simulation techniques and procedures are demonstrated in SIM driver, InInit() and OnSimulation() events. The example uses a DMM (Hp34401a.drv), you can run the example without any hardware when in simulation mode. See the user’s guide Simulation topic for more information.
Files included:
● Simulation.prj
● Simulation.prg
● Language.prg
● Simulation.sys
● Simulation.drv
● HP34401a.drv
● TestExec.drv
This Example shows how to control a console application. The example shows four console applications. The windows Command prompt (cmd.exe), TCL. PERL and PYTHON interpreters. The PERL interpreter used in this example is Strawberry Perl (http://www.strawberryperl.com). The TCL interpreter used in this example is ActiveState ActiveTcl (http://www.activestate.com/activetcl). The PYTHON interpreter used is Python Software Foundation (http://www.python.org). The example uses the ATEasy StdIoProcess driver that can be used to control console applications by redirection their standard input, output and error pipes. The driver offers synchronous and asynchronous way to redirect the input to the console application. The driver uses .NET System.Diagnostics.Process class).
Files included:
● StdIoProcess.prj
● StdIoProcess.prg
● StdIoProcess.sys
● StdIoProcess.drv
● StdIoProcessAdd.tcl
● StdIoProcessAdd.pl
● StdIoProcessAdd.py
This example can be used as a basic building block for building your own test executive. It displays a form that allows the user to select a test from the program tests and run it.:
Files included:
● TestExecMini.prj
● TestExecMini.prg
● TestExecMini.drv
This example demonstrates the use of TestExec and Profile drivers and their user interface. A Profile file (TestExec.prf) is provided and contain several profiles ready to run.
Files included:
● TestExec.prj - project files for sample test executive
● TestExec-1.prg - sample test program
● TestExec-2.prg - sample test program
● TestExec.sys - system file for test exec which uses the three files below:
● Profile.drv - profile driver
● TestExec.drv - test executive driver
● TestExec.prf - profile file for the example
This example demonstrates the use of the TestExec to run multiple UUTs in parallel and sequential mode. The example is like the TestExec example with the exception of additional code that was added to the System.OnInit() event to setup and run multiple UUTs.
Files included:
● TestExecMultipleUUts.prj - project files for sample test executive
● TestExec-1.prg - sample test program (run in sequential mode)
● TestExec-2.prg - sample test program (run in sequential mode)
● Language.prg - language example (run in parallel mode)
● TestExecMultipleUUts.sys - system file for test exec which uses the three files below:
● Profile.drv - profile driver
● TestExec.drv - test executive driver
This example demonstrates the use of Test Executive Users file. The users file allows you to create a multi-users environment where an administrator sets each user group’s privileges.
Files included:
● TestExecUsers.prj
● TestExec-1.prg
● TestExec-2.prg
● TestExecUser.prg
● TestExecUser.sys
● Profile.drv
● TestExec.drv
This example demonstrates how to use an ActiveX object, ActiveX control, enumerated type and structures created using Microsoft Visual basic. The example is provided with sources safe for the Visual Basic project. You should have VB 6.0 to compile the VB examples, and VB 6.0 run-time in order to run it.
Files included:
● VB.prj - project files for using Visual Basic objects from ATEasy
● VB.prg - example showing how to use the ATEasyVB.ocx control
● ..\VB\ATEasyVB.ocx - the compiled DLL example
● ..\VB\ATEasyVB.vbp - VB 6.0 project file
● ..\VB\Class1.bas - VB sample class module file
● ..\VB\CPShapeL.ctl - VB sample ShapeLabel control
● ..\VB\CPShapeL.ctx - VB sample ShapeLabel property page
● ..\VB\CPShapeL.pag - VB sample ShapeLabel property page
This example demonstrates how to use WinSNMP using the Microsoft Windows SNMP Application Programming Interface (the WinSNMP API). WinSNMP allows you to develop SNMP-based network management applications that are executed in the Windows environment. The Simple Network Management Protocol (SNMP) is a request-response protocol that transfers management information between protocol entities. To run the example, you must install the SNMP service (a Windows Features), see the example program source for more information.
Files included:
● WinSNMP.prj - project files for WinSock (TCP or UDP connection) communication using interface events
● WinSNMP.prg - program file contains several examples showing how to use the ATEasy SNMP driver.
● WinSNMP.sys - system file for WinSNMP application
● WinSNMP.drv - the ATEasy SNMP driver using the Windows SNMP API DLL.
This example demonstrates how to use WinSock and TCP/IP communication protocol to communicate between applications. The application creates a window that is used to type text used to send to a TCP/IP port. Any data received from the port is appended and displayed in the window. The application can be set to function as a client or as a server. The example uses ATEasy Interface Events to receive data from the port (client or server) or accept the client connection (server). This example is similar to the WsChatMT, however, the communication is done here using interface events instead of using a separate thread to receive data.
Files included:
● WsChatIE.prj - project files for WinSock (TCP or UDP connection) communication using interface events
● WsChatIE.sys - system file for WsChatIE application
● WsChatIE.drv - contains a terminal-like application to communicate using WinSock ports
This example demonstrates how to use WinSock and TCP/IP communication protocol to communicate between applications. The application creates a window that is used to type text used to send to a TCP/IP port. Any data received from the port is appended and displayed in the window. The application can be set to function as a client or as a server. The example uses a separate thread to receive data from the port (client or server) or accept the client connection (server). This example is similar to the WsChatIE, however, communication is done here in separate thread instead of using interface events.
Files included:
● WsChatMT.prj - project files for WinSock (TCP or UDP connection) communication using multi-threading
● WsChatMT.sys - system file for WsChatMTapplication
● WsChatMT.drv - contains a terminal-like application to communicate using WinSock ports
The following examples require the ATEasy 2.x migration to be installed when installing ATEasy:
This example is provided for ATEasy 2.x compatibility. It demonstrates the ATEasy 2.x TXTLOG control used to display the test log.
Files included:
● AtezTxt.prj - project files for ATEasy 2 ATEZTXT sample
● AtezTxt.prg - demonstrates ATEasy 2 ATEZTXT driver
● AtezTxt.sys - demonstrates ATEasy 2 ATEZTXT driver
● AtezTxt.drv - provides the ATEZ2 Log control
This example is provided for ATEasy 2.x compatibility. It demonstrates creating and using ATEasy 2.x Dialogs created using DlgEasy and the ATEZUSER driver. Note you must have the correct DLG files path in ATEasy.INI in the [DlgEasy] section (e.g. Path=C:\ATEASY2\DLG). This example is available only if you've selected to install ATEasy 2.x Migration files during the setup.
Files included:
● Dialogs.prj - project files for ATEasy 2 Dialogs sample
● Dialogs.prg - demonstrates ATEasy 2 dialogs
● Dialogs.dlg - ATEasy 2.x dialog file for the example
● User.sys - system file that contains the ATEZUSER driver
This example is provided for ATEasy 2.x compatibility. It demonstrates creating and using ATEasy 2.x Dialogs created using ATEZUSER driver. This example is available only if you've selected to install ATEasy 2.x Migration files during the setup.
Files included:
● User.prj - project files for ATEasy 2 User sample
User.prg - demonstrates ATEasy 2 ATEZUSER driver dialogs
User.sys - system file that contains the ATEZUSER driver