HOWTO: Disable Data Execution Prevention in Vista
Published on 2009/03/23 by Igor Levicki
Few seconds ago I was playing Mirror's Edge and decided I need a trainer because some guards were annoying me. I downloaded one and started it and Windows Vista Data Execution Protection kindly shut down my game without asking me a single thing.
After getting over the cursing because I lost the position (it is a checkpoint based game and you know how much I hate those), I decided to stop Vista from "protecting" me once and for all by permanently disabling DEP.
Disabling DEP is simple, open a command prompt and type:
bcdedit.exe /set {current} nx AlwaysOff
That's it. Now just reboot, and then you can verify whether DEP is disabled by opening a command prompt and typing:
wmic OS Get DataExecutionPrevention_SupportPolicy
You need administrative rights to do this, so either disable UAC beforehand or right-click on a Command Prompt icon and select Run As Administrator.
This is a perfect example of a usefull feature defeated by a poor user interface design — if before terminating the game Vista asked me something along the lines of "This program is behaving funny, do you want to turn it off or to add it to the DEP exception list?" then I wouldn't have to permanently disable DEP. Life is simply too short to be wasted on creating DEP or any other whitelists by hand.