RtlCaptureStackBackTrace 函数 (winnt.h)
RtlCaptureStackBackTrace 例程通过向上浏览堆栈并记录每个帧的信息来捕获堆栈回溯。
语法
NTSYSAPI WORD RtlCaptureStackBackTrace(
[in] DWORD FramesToSkip,
[in] DWORD FramesToCapture,
[out] PVOID *BackTrace,
[out, optional] PDWORD BackTraceHash
);
参数
[in] FramesToSkip
要从回溯跟踪的开头跳过的帧数。
[in] FramesToCapture
要捕获的帧数。
[out] BackTrace
从当前堆栈跟踪捕获的指针数组。
[out, optional] BackTraceHash
可用于组织哈希表的可选值。 如果此参数为 NULL,则不计算哈希值。
此值是根据 BackTrace 数组中返回的指针的值计算的。 两个相同的堆栈跟踪将生成相同的哈希值。
返回值
捕获的帧数。
要求
最低受支持的客户端 | 从 Windows XP 开始提供。 |
目标平台 | 通用 |
标头 | winnt.h (包括 Ntifs.h、FltKernel.h) |
Library | NtosKrnl.lib;Windows 10 上的 OneCoreUAP.lib |
DLL | NtDll.dll (用户模式) ;NtosKrnl.exe (内核模式) |
IRQL | <= DISPATCH_LEVEL |