Support for .NET in OpenEdge on Windows
- Last Updated: February 5, 2026
- 3 minute read
- OpenEdge
- Version 13.0
- Documentation
Overview
.NET Framework 4.8 and .NET are both supported with OpenEdge on Windows. See the OpenEdge 13 Platform Compatibility Guide for information on the .NET versions supported.
With .NET, developers and software architects can take advantage of newer .NET libraries and new platform features, such as user interface improvements for .NET-based controls. .NET also provides significant performance improvements over .NET Framework. .NET Framework 4.8 was released by Microsoft as the final version. Microsoft will continue to support it, but it will not receive any new features. Upgrading to .NET allows you to move your application forward into the future.
OpenEdge applications that use .NET Framework continue to work without any changes. However, you may wish to migrate your application to the newer version to take advantage of all the features that .NET has to offer.
- Install the .NET runtime
- Add the
-clrnetcorestartup parameter - Replace .NET Framework specific libraries with .NET compatible libraries, if required
- Recompile your r-code
Installation requirements
OpenEdge does not ship with a .NET installer. To use .NET with OpenEdge, you must install a .NET runtime on each machine where OpenEdge is installed. .NET installation files are available at https://dotnet.microsoft.com/en-us/. OpenEdge requires the .NET Desktop Runtime, which includes the base .NET Runtime and the WinForms libraries among others. Alternatively, you can install the .NET SDK.
OpenEdge supports .NET on both 64-bit and 32-bit installations of OpenEdge. Be sure to download and install the package that matches your OpenEdge installation.
Startup parameters
|
-clrnetcore takes no arguments. If -clrnetcore is not
specified, the AVM loads .NET Framework. -clrnetcore works with
PROWIN (64-bit GUI client), PROWIN32
(32-bit GUI client), _progress (character client), Progress
Application Server agent, and WebClient.
|
You may also use the Preload CLR (-preloadCLR) and Assemblies (-assemblies) startup parameters. These parameters work with .NET, behaving the same as they did in earlier releases.
Install .NET compatible libraries
You may need to acquire new libraries compatible with .NET in order for your application to work. Once acquired, place them into the assemblies directory and update the assemblies.xml file. By default, these files are expected to be in the current working directory of the ABL session. However, you can change this location by using the Assemblies (-assemblies) startup parameter. All incompatible .NET Framework-specific assembly references should be removed. For more information, see the section on "Acquiring assemblies for your application" in Changes and limitations with .NET on Windows.
Recompile your r-code
Many .NET assemblies have APIs that are compatible with .NET Framework. However, your application may use some that are not. You can recompile your application, and in the process, address any API incompatibilities. When moving from .NET Framework to .NET, some libraries may have breaking changes. Review the compatibility documentation from Microsoft for the core set of libraries at https://learn.microsoft.com/en-us/dotnet/core/compatibility/library-change-rules. These changes may require updates to your ABL source code. You should review the list to determine if any impact your application or the .NET libraries used by your application. These lists cover the Microsoft supplied "core" set of assemblies. If you have third-party .NET Framework libraries, see the vendor’s documentation for compatibility with .NET.