Try OpenEdge Now
skip to main content
Managing ABL Applications
Building OpenEdge Executables : Building executables in Windows : Building a customized executable in Windows
 

Building a customized executable in Windows

This section contains instructions for building OpenEdge client or AppServer executables running in Windows to access custom C functions. The script is located in the oebuild/make directory under the root of your OpenEdge installation.
To build a Windows client executable:
1. Log in as Administrator and run the Proenv utility (StartProgramsOpenEdge Proenv) on a system where OpenEdge is installed. This sets the DLC variable.
2. Change directory to the OpenEdge make directory. For example:
proenv> cd %DLC%\oebuild\make
3. Set up the Microsoft Visual C++ environment by running vcvars32.bat. For example:
proenv> "C:\Program Files\Microsoft Visual Studio         .NET\Vc7\bin\vcvars32.bat"
4. Make a backup copy of the original OEBuild link options script and the OpenEdge tie-in object used to access custom C functions, hlprodsp.o. There are three versions of the OEBuild link options script, depending on the OpenEdge client executable you plan to build:
*build_prow32.link — OpenEdge GUI client executable
*build__prchar.link — OpenEdge character client (or WebSpeed® agent) executable
*build__proapsv.link — AppServer agent executable
For example, to copy the original GUI OpenEdge client and OpenEdge tie-in object use the following commands:
proenv> copy build_prow32.link build_prow32.link.orig
proenv> copy ..\obj\hlprodsp.obj ..\obj\hlprodsp.obj.orig
5. Edit the C source file for the OpenEdge tie-in object in order to tie in your C functions to ABL as explained in the source file comments. This file is located at the following path:
%DLC%/oebuild/hlc/hlprodsp.c
6. Compile the new tie-in object. For example:
proenv> cl -c -Fo ..\obj\hlprodsp.obj ..\hlc\hlprodsp.c
7. Edit the link options script for your executable (build_prow32.link, build__prchar.link, or build__proapsv.link) to add customized objects and any necessary libraries to accommodate them on the link line. Save the file.
8. Run the link command to create a customized OpenEdge client dynamic link library (DLL). For example, to create a customized GUI OpenEdge client DLL:
proenv> link @build_prow32.link
9. Back up the original OpenEdge client DLL. For example:
proenv> copy %DLC%\bin\prow32.dll %DLC%\bin\prow32.dll.orig
10. Copy the customized OpenEdge client DLL into the installed bin directory. For example:
proenv> copy %DLC%\oebuild\make\prow32.dll %DLC%\bin\prow32.dll