我在Windows Web Server 2008 R2 x64上构建了一个导致缓冲区溢出异常并具有以下签名的应用程序

问题签名:问题事件名称:BEX应用程序名称:AlgorithmEvaluation.exe应用程序版本:1.0.0.0应用程序时间戳:4f7c6063故障模块名称:clr.dll故障模块版本:4.0.30319.1故障模块时间戳:4ba1d9ef异常偏移量:002b5b8c异常代码:c0000409异常数据:00000000 OS版本:6.1.7600.2.0.0.1296.17区域设置ID:1033附加信息1:5044附加信息2:50442b9f233457091c25e076784708c8附加信息3:3eea附加信息4:3eeac65aee1d9241f0a9b0ca3bae03d6

该应用程序是用C#编写的,并调用.NET dll(用C / CLI编写),后者又包装了一个本机C dll . 由于我没有x86 C dll的源代码,因此我将所有其他代码设置为x86 . C#应用程序是多线程的,使用Microsoft的CCR,它可以读写SQL Server 2008 Express数据库 .

按照MSDN中的这些说明,我已将C / CLI项目设置为TSAWARE,并且根据this,我认为我的C#项目默认应该是TSAWARE(我正在使用远程桌面访问Web服务器计算机,如果这很重要) . 我也读过这篇文章.2921740_ . 我考虑过关闭DEP的建议,但我担心这会导致更糟糕的事情发生

该应用程序在运行Windows 7 Home x64的笔记本电脑上没有问题 .

不幸的是,我没有硬件在合理的时间在我的笔记本电脑上运行它 . 有人有想法吗?谢谢