在VS2010中堆积了腐败

时间:2012-05-14 09:34:21

标签: c++ visual-studio-2010 heap-corruption

我有一个native-dll,它最初是用Visual Studio 6.0(C ++)制作的

我需要新项目中的dll,所以我用VS2010编译了源代码,以便生成另一个native-dll。我确实需要对原始源代码进行一些修改,但为了测试更改,我还使用VS 6.0编译了升级后的源代码,这样就可以了。

然而,在VS2010版本中,我遇到了奇怪的堆损坏问题。它们不会立即出现,而是在几次访问堆之后出现。例如,当我最小化堆使用时,我能够运行该软件但具有完整功能,系统将更早崩溃。

所以我的问题是:在使用VS2010编译非托管代码时,是否应该记住堆使用情况?我需要在某处设置它的大小吗?

对于模糊的描述感到抱歉,但我感谢有人可能有过的任何经历。

编辑: 我已经在CrtSetDbgFlag中打开了_CRTDBG_CHECK_ALWAYS_DF-flag,所以现在我的堆在每次(de)分配之前都会被检查。在崩溃之前,我没有得到任何断言失败。这可能意味着它毕竟没有损坏的堆问题,尽管有错误信息?我应该看到CRTDBG的堆损坏吗?

0 个答案:

没有答案