Kernel 如何使用WinDbg创建内核转储

Kernel 如何使用WinDbg创建内核转储,kernel,windbg,minidump,Kernel,Windbg,Minidump,我正在使用WinDbg调试Windows内核模式设备驱动程序。 是否可以按需创建小型转储 我的意思是,我的一个断点被击中,系统停止。我想创建一个小型转储(比如说仅堆栈)。有WinDbg关键字吗 提前感谢当遇到断点时,您可以这样编写一个小型转储: bp myDLL!myFunc ".dump /ma c:\myDump.dmp;g" 这将为函数添加一个断点并执行引号中的命令,这将使用大多数标志编写一个小型转储,然后继续 有关.dump和bp语法的更多信息,请参阅 要在用户或内核模式下转储完整内存

我正在使用WinDbg调试Windows内核模式设备驱动程序。 是否可以按需创建小型转储

我的意思是,我的一个断点被击中,系统停止。我想创建一个小型转储(比如说仅堆栈)。有WinDbg关键字吗


提前感谢

当遇到断点时,您可以这样编写一个小型转储:

bp myDLL!myFunc ".dump /ma c:\myDump.dmp;g"
这将为函数添加一个断点并执行引号中的命令,这将使用大多数标志编写一个小型转储,然后继续

有关
.dump
bp
语法的更多信息,请参阅

要在用户或内核模式下转储完整内存,请执行以下操作:

.dump /f
但是
/ma
开关实际上为用户模式输入了更多信息

如果出现错误:

Unable to create file 'c:\myDump.dmp' - Win32 error 0n5
    "Access is denied."
尝试将文件写入c:\users\public\目录

.dump /f c:\users\public\myDump.dmp

请注意,.dump不能创建内核内存转储,只能创建完整或较小的内存转储(/f或/m)。要获取内核内存转储,需要使用控制面板启用转储文件的写入,然后在调试器中使用.crash触发崩溃,这将导致写入转储文件

有关如何使用它的更多详细信息,包括“创建内核模式转储文件”的链接,请参阅.crash的windbg帮助