Feedback
 
Did this article resolve your question/issue?

   

Your feedback is appreciated.

Please tell us how we can make this article more useful. Please provide us a way to contact you, should we need clarification on the feedback provided or if you need further assistance.

Characters Remaining: 1025

 


Article

What is DEP?

« Go Back

Information

 
Article Number000011397
EnvironmentProduct: OpenEdge
Version: All supported versions
OS: Windows Server 2003; Windows Server 2008; Windows XP SP2; Windows Vista; Windows 7
Other: Data Execution Prevention
Question/Problem Description
What is DEP?
What is Data Execution Prevention?
Steps to Reproduce
Clarifying Information
Error Message
Defect/Enhancement Number
Cause
Resolution
Data Execution Prevention (DEP) is a set of hardware and software technologies that perform additional checks on memory to help prevent malicious code from running on a system. 
The primary benefit of DEP is to help prevent code execution from data pages. 
Typically, code is not executed from the default heap and the stack. 
The DEP feature was first included in Windows XP SP2, Window Server 2003 SP1, and above.
 
DEP is enforced by hardware and by software:
  • Hardware-enforced DEP detects code that is running from these locations and raises an exception when execution occurs. 
  • Software-enforced DEP can help prevent malicious code from taking advantage of exception-handling mechanisms in Windows. 
If DEP is set to "Turn on DEP for all programs and services except those I select:"
various behaviors can occur in the OpenEdge environment such as:
 
  • An OpenEdge database not starting,
  • Not being able to pull data into Microsoft SQL Server from a Progress database, 
  • Similar problems with the OpenEdge client process prowin32.exe if it invokes ActiveX controls or other Windows programs and utilities, or
  • The OpenEdge AdminServer not starting, where much of the problem stems from the fact that the associated Java process "java.exe" is being prevented from running in memory with the current configured DEP settings.
To correct this behavior, change Windows' DEP setting to "Turn on DEP for essential Windows programs and services only"
or add exceptions for the related OpenEdge installed executable such as java.exe, prowin32.exe etc.
 
To change the DEP setting:
 
1. Navigate to My Computer > Properties > Performance > Settings > Data Execution Prevention.
2. Do one of the following:
    - Select "Turn on DEP for essential Windows programs and services only"
    - Select "Turn on DEP for all programs and services except those I select", and click Add to add the programs that should not use the DEP feature (typically %DLC%\jre\bin\java.exe and/or %DLC%\bin\prowin32.exe).
3. Reboot the machine.

NOTE: OpenEdge became DEP compliant in all releases starting with Release 11.0, by compiling with Visual Studio 2010 or later using /NXCOMPAT:YES.
 

Workaround
Notes
References to Other Documentation:

Data Execution Prevention (DEP) feature in different Windows versions can be found at:

"A detailed description of the Data Execution Prevention (DEP) feature in Windows XP Service Pack 2, Windows XP Tablet PC Edition 2005, and Windows Server 2003"
https://support.microsoft.com/en-us/help/875352/a-detailed-description-of-the-data-execution-prevention-dep-feature-in

How to determine that hardware DEP is available and configured on your computer
https://support.microsoft.com/en-us/help/912923/how-to-determine-that-hardware-dep-is-available-and-configured-on-your

Progress Articles:

000062033, Cannot turn off data execution protection (DEP) for prowin32.exe  
000028532, Critical Alert – Issues migrating applications that use ActiveX/COM objects to OpenEdge 11.
 
Attachment 
Last Modified Date6/3/2019 9:09 AM