.net 4调试api有什么办法可以在启动过程中以某种方式破坏应用程序的状态?
我遇到的问题如下:
- 如果我使用 .net 调试 api(visual studio 2010,sharp develop 4,mdbg)从调试器中启动我的应用程序,我会遇到各种随机访问违规。
- 如果我从不使用 .net 调试 api(delphi 2007,带有 sos 扩展名的 windbg)的调试器中启动我的应用程序,一切正常。
- 如果我直接启动我的应用程序,然后在其上附加一个调试器(如 Visual Studio 2010、Sharp Develop 4、mdbg、delphi 2007、windbg),一切正常。
- 如果我回到 .net 3.5 和 clr 2.0,我完全没有问题。
那么托管调试 api 中从 .net 3.5 到 4.0 的哪些变化导致我的应用程序在启动时引发访问冲突?
该应用程序是用 delphi(非托管)和 c#(托管)编写的,使用托管 vcl进行互操作。
我很难举出任何例子来重现这个问题,所以我知道回答这个问题可能是不可能的,但如果有人对调试 api 有更深入的了解,可以给我一个正确方向的提示,或者可以帮助我缩小范围会很感激的。