如何在WinRT中从C++获取堆栈跟踪?

Ear*_*rlz 8 c++ exception stack-trace windows-runtime windows-store-apps

我需要从C++应用程序中获取堆栈跟踪,并将其序列化为字符串,以便稍后进行解析.我在Windows上听到的唯一一个API是StackWalk64,它似乎不受支持.

如何在Windows应用商店应用中从C++获取堆栈跟踪?

Mat*_*son 1

我能够调试复杂 WINRT 问题的唯一方法是使用 ETW 来跟踪因果链。虽然设置起来有点乏味这篇文章(参考 c#)重点介绍了该方法:

这里有一些关于 C/C++ 的 ETW 的不错的介绍。

使用此方法,您应该能够创建 ETW 事件,然后在应用程序中侦听它们,并将它们作为序列化字符串包含在内以供稍后分析。