Open topic with navigation
Using the RTX RTDLL Template
RTX provides two templates in the Templates/Visual C++ branch in the supported versions of Microsoft Visual Studio:
- RTX Application – creates
a project and solution for the development of RTX applications. For more information on this template, see Using the RTX Application Template.
- RTX RTDLL – creates
a project and solution for the development of RTX Real-Time Dynamic-Link Library (RTDLLs).
The RTX project contains four build configurations: Windows
Release, Windows Debug, RTSSRelease, and RTSSDebug. The RTX RTDLL Template sets the project settings for each configuration according to the
program and project options that you specify. The template can also
provide a basic C/C++ program framework with which to work. This program framework
can include RTX program elements, which contain C/C++ code to create RTX objects
and demonstrate their use.
NOTE: RTX only supports absolute pathnames.
Sections in this Topic:
Creating a RTX RTDLL
RTX RTDLL template provides the structure for creating RTX
RTDLLs. Use the following procedure to create
an RTX project using any RTX RTDLL template in Microsoft Visual Studio.
To create an RTX RTDLL project:
- From the Visual Studio menu bar select File
> New > Project.
- Select Visual
C++ from the Templates list.
- Select RTX RTDLL from the templates
area.
- This template is a single-page dialog that displays the default project settings and provides optional application and program settings. To accept the current settings, click Finish. Optionally, you can specify other options and libraries that you want to include in your RTX application project:
- Project Type – You can create a project in C or C++. Select the type of project source you want to create. This causes the generation of either .C or .CPP files, and also determines which compiler to use when building your application.
- Supported String Convention – Specify Unicode or MultiByte. This determines if the associated pre-processor definitions will be included in the project settings.
- Add additional headers and libraries:
- RT-TCP/IP Support – adds support for the RT-TCP/IP Stack component within RTSS configurations and Windows socket libraries for Windows configurations.
- Microsoft C Runtime Support – adds C/C++ Runtime support. Most programs need support for C Runtime functions.
- If these are all the options needed, click Finish to create the project.
Otherwise,
continue editing
program settings for this application.
- Provide a program framework – The RTX RTDLL Template can build a basic program
framework consisting of source and header files, or it can build an empty project. When Provide a program framework is un-checked, the RTX RTDLL template sets only the project settings
and does not include any header or C/C++ files, and all program elements become grayed-out. When
Provide a program framework is
checked, the RTX RTDLL template inserts
into the project C/C++ source files that contain basic program functionality
and header files that contain include and define statements. The program framework also contains a code segment for an exported function, exported variable, and an exported class.
When Provide a program framework is checked, you can optionally add elements to the program framework. These
code segments show proper usage of Real-time API function calls and can
serve as examples of how to set up these elements. Areas
in the element code that need to be customized by the user are indicated
by "TO DO" comments. You can select more than one type of programming
element for a single project. The following table provides the available
program elements.
NOTE: When Provide a program framework is un-checked, these options are grayed out.
Periodic timer thread
|
Transforms the basic Export function already in the program framework into TimerThread Export.
|
- Click Finish. This generates the RTX solution and project according
to the options you selected.
Resulting Configurations
Four configurations for creating DLLs are generated in Visual Studio when you create a project using the RTX RTDLL template:
- RTSSDebug – Real-time DLL that has debug flags enabled
- RTSSRelease – Optimized Real-time DLL that does not include additional debug information
- Debug – Windows 32-bit DLL linked to RTX that has debug flags enabled
- Release – Windows 32-bit DLL linked to RTX
Compiler and Linker Options
For a complete list, see Compiler and Linker Options for Visual Studio.