c++ - 在 Visual Studio 中启用 DEP

标签 c++ visual-studio-2010

我最近一直在做一些关于 DEP 的研究,我在 Visual Studio 下使用链接器选项/NXCOMPAT 编译了我的代码。当我在调试器下运行可执行文件并转储 ntdll!_KPROCESS 结构时,我得到以下信息:

+0x096 Flags            : _KEXECUTE_OPTIONS
      +0x000 ExecuteDisable   : 0y0
      +0x000 ExecuteEnable    : 0y1
      +0x000 DisableThunkEmulation : 0y0
      +0x000 Permanent        : 0y1
      +0x000 ExecuteDispatchEnable : 0y0
      +0x000 ImageDispatchEnable : 0y0
      +0x000 DisableExceptionChainValidation : 0y1
      +0x000 Spare            : 0y1

这表明 DEP 已禁用 (ExecuteDisable == 0)。 我想补充一点,在我的机器下启用了硬件 DEP。

最佳答案

了解 DEP in MSDN包括系统范围的设置和 /NXCOMPAT linker option与单个应用程序有关。可能还有与 DEP 相关的 BIOS 设置。

关于c++ - 在 Visual Studio 中启用 DEP,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/19892714/

相关文章:

c# - 像 stackoverflow 一样的标签控件

c++ - 阻止程序打开您的程序

c++ - 与其他几个具有相同输入的编译器相比,在 Xcode 中编译的代码给出了不正确的(?)输入

.net - 我可以创建项目特定的代码片段吗?

visual-studio-2010 - 如何在VS2010后期构建步骤中添加双引号

visual-studio-2010 - tr1:boost vs vs2010,使用没有命名空间的shared_ptr

c++ - 激活记录是在构建二进制文件的哪个阶段定义的?

c++ - 如何使用用户输入在 C++ 中正确填充二维数组?

c++ - C编程: Running 2 while loops and get the random result for data from loop1

c# - 将 SQL Server Express 2008 降级到 SQL Server Express 2005?