在 Visual Studio 中关闭运行时检查

Switch off Run-Time check in Visual Studio

本文关键字:运行时 检查 Visual Studio      更新时间:2023-10-16

我遇到了问题,在Visual C++ 2008中由于将太大的数字转换为较小的类型而导致运行时检查失败。故障出在外部dll中,所以我无法在那里修复它。那么如何关闭外部项目的运行时检查。

如果转换(和检查)发生在无法重新编译的 DLL 中,则无法轻松关闭检查。

您唯一能做的就是更改传递给DLL的数据以避免出现问题。 或者修补二进制文件以禁用检查,这可能不会非常困难 - 你对反汇编器很好吗?

运行时检查取决于/RTC c c 能够在项目的 Visual Studio 配置属性、C/C++ 代码生成、"较小类型检查"中找到的选项。您应该关闭此功能,然后重新编译。

您始终可以在项目设置中关闭投射到较小类型检查。

如果在将检查编译到 dll 中时不起作用,则可以尝试链接到非调试版本 dll,因为检查只能针对调试"优化"构建打开。当然,这可能会影响您的调试。