0xC0000005 and Data Execution Prevention | DEP Exceptions, Disabling DEP

Data Execution Prevention (DEP)

Data Execution Prevention (DEP) was introduced by Microsoft in Windows XP SP2 and used in later versions. In simple words, DEP is designed to prevent execution of malware applications and protect your computer from harmful programs (that is why DEP is often interpreted as Data Execution Protection).

The nasty 0xC0000005 error may occur because of Data Execution Prevention (DEP) introduced by Microsoft in SP2 and used in later Windows versions. DEP is a set of security features that prevents code execution from non-executable memory segments. In other words,
DEP monitors and ensures that the applications installed on your computer use the system memory in a safe way. And, for sure, you can handle DEP without paying $250 to $500 or more dollars to computer guys. Let's look into this.

The information on your computer is stored as data and executable code, each type of information exploits its own memory segment. The 0xC0000005 error means that a program is trying to execute data as a code from non-executable parts of memory. Such behavior is characteristic of malware and DEP traps attempts to execute a malware code. The 0xC0000005 error message notifies you of such attempts. But many legal software programs use dynamic code generation, and the generated code is not always marked as executable code, which makes such applications incompatible with DEP and results in the 0xc0000005 access violation error. There are several ways to eliminate 0xc0000005 errors caused by Data Execution Prevention.

What to do with DEP incompatibility

  • You may contact your software vendor and notify about the 0xc0000005 error so that they release a patch or fix DEP incompatibility in future versions.
  • You can set DEP exceptions for the application you need (make sure the application is legitimate before you do so!). In most DEP cases this is the best solution for the 0xC0000005 error.
  • Turning off Data Execution Prevention is the worst of all solutions because it leaves your computer unprotected.

Basic Error Concepts: