getSystemDEPPolicy 函数 (winbase.h)

获取系统 (DEP) 策略设置的数据执行防护。

语法

DEP_SYSTEM_POLICY_TYPE GetSystemDEPPolicy();

返回值

此函数返回 类型为 DEP_SYSTEM_POLICY_TYPE 的值,可以是以下值之一。

返回代码/值 说明
AlwaysOff
0
无论 DEP 的硬件支持如何,系统的所有部分都禁用 DEP。 处理器在 32 位版本的 Windows 中以 PAE 模式运行,除非在启动配置数据中禁用 PAE。
AlwaysOn
1
为系统的所有部分启用 DEP。 所有进程始终在启用 DEP 的情况下运行。 无法为所选应用程序显式禁用 DEP。 忽略系统兼容性修补程序。
OptIn
2
在处理器能够执行硬件强制 DEP 的系统上,仅自动为操作系统组件启用 DEP。 这是 Windows 客户端版本的默认设置。 可以为所选应用程序或当前进程显式启用 DEP。
OptOut
3
会自动为操作系统组件和所有进程启用 DEP。 这是 Windows Server 版本的默认设置。 可以为所选应用程序或当前进程显式禁用 DEP。 DEP 的系统兼容性修补程序已生效。

注解

系统范围的 DEP 策略在启动时根据启动配置数据中的策略设置进行配置。 若要更改系统范围的 DEP 策略设置,请使用 BCDEdit /set 命令设置 nx 启动入口选项。

如果系统 DEP 策略为 OptIn 或 OptOut,则可以通过调用 SetProcessDEPPolicy 函数有选择地为当前进程启用或禁用 DEP。 此函数仅适用于 32 位进程。

具有管理权限的用户可以使用 System 控制面板 应用程序为所选应用程序禁用 DEP。 如果系统 DEP 策略为 OptOut,则为这些应用程序禁用 DEP。

应用程序兼容性工具包可用于创建免除 DEP 的各个应用程序的列表。 如果系统 DEP 策略为 OptOut,则会自动为列表中的应用程序禁用 DEP。

要求

要求
最低受支持的客户端 带 SP1 的 Windows Vista、带 SP3 的 Windows XP [仅限桌面应用]
最低受支持的服务器 Windows Server 2008 [仅限桌面应用]
目标平台 Windows
标头 winbase.h (包括 Windows.h)
Library Kernel32.lib
DLL Kernel32.dll

另请参阅

数据执行保护

GetProcessDEPPolicy

GetSystemDEPPolicy