我正在 Visual Studio 2010 c# 中开发一个应用程序,我正在使用一些与硬件交互的第 3 方控件。我面临的问题是 DEP(数据执行保护)不允许我的应用程序运行或调用与硬件交互的 DLL/API。
我的应用程序部署在 Windows 7 上,请任何人指导我如何使我的应用程序符合 DEP 或如何避免 DEP。
我正在 Visual Studio 2010 c# 中开发一个应用程序,我正在使用一些与硬件交互的第 3 方控件。我面临的问题是 DEP(数据执行保护)不允许我的应用程序运行或调用与硬件交互的 DLL/API。
我的应用程序部署在 Windows 7 上,请任何人指导我如何使我的应用程序符合 DEP 或如何避免 DEP。
这当然不是为未命名的“第三方控件”找到支持的正确位置,请联系其所有者或供应商。.NET 编译器将它们生成的可执行文件标记为自 .NET 2.0 SP1 起与 DEP 兼容。如果您无法更新这些控件,您将拥有的唯一选择是将您的程序标记为不兼容。
您需要在编辑可执行标头的构建后事件中执行此操作。Project + Properties, Build events 并将其粘贴到 Post build event 命令行框中:
set path=%path%;$(DevEnvDir);$(DevEnvDir)..\..\vc\bin
editbin.exe /NOLOGO /NXCOMPAT:NO "$(TargetPath)"