2011-11-05 64 views
5

有没有一种方法可以使用本地C++来访问.NET调用堆栈?
我读dbgHelp只处理本机帧。
此外,我试图找到有关.NET调用堆栈如何构建,但没有找到任何东西的信息。
有没有人知道这个链接?使用本机C++来访问.NET调用堆栈

回答

1

DbgHelp只处理本地帧,但Managed Debugging API实际上是一个本地API(自然,因为当托管运行时在断点处停止时不能使用托管代码进行调试)。

here的样本。

特别感兴趣的是ICorDebugStackWalk interface

+0

好的,所以我可以使用这个从C++程序没有从非托管代码切换到托管的开销,对吗?我想我会尝试使用这个http://msdn.microsoft.com/en-us/library/ms233401(v=VS.80).aspx,因为它在框架2中支持以及:) – Idov