windbg:有可能在我自己的程序中嵌入Windgb引擎吗?

时间:2012-05-14 19:09:52

标签: windows debugging windbg

我想编写一个调试/诊断工具,它可以调用Windbg函数来检查转储文件,而不是编写windbg扩展。这可能和任何参考?

非常感谢。

5 个答案:

答案 0 :(得分:5)

您可以使用dbghelp.dll中实现的调试API,而不是WinDbg。它记录在MSDN上。该参考文档相当干燥,但它应该让您了解API的功能。例如,MiniDumpReadDumpStream是检查转储文件的网关。

答案 1 :(得分:3)

除现有答案外,WinDBG还是DbgEng API的GUI前端。您可以使用此API编写WinDBG扩展或其他独立应用程序。 WinDBG SDK随附两个示例,可以在WinDBG安装的\ sdk \ samples \ dumpstk子目录中找到示例独立应用程序。

有关更多信息,我写了一篇关于DbgEng的文章来编写扩展:

http://www.osronline.com/custom.cfm?name=articlePrint.cfm&id=559

其中大部分也适用于编写独立应用程序的方式,因为它主要关注DbgEng接口的编程模式。

答案 2 :(得分:3)

答案 3 :(得分:1)

您可以使用powershell或命令行版本的WinDbg(即cdb)创建命令,然后解析您解释的cdb的输出。

这类似于将cdb的输出传递给你的应用程序的概念。

有关于以这种方式使用powershell的帖子:http://rkeithhill.wordpress.com/2006/08/14/minidump-crash-analysis-with-powershell/

将命令泵送到cdb并解释输出以获取特定命令应该是直截了当的。

答案 4 :(得分:1)

与dbgeng集成的Python: pykd.codeplex.com

此项目可用作此类整合的演示