IDkmHeuristicStackWalker.HeuristicWalkFrames(DkmStackWalkContext, DkmFrameRegisters, UInt32, UInt64, DkmFrameRegisters, Boolean) Метод

Определение

Попытайтесь проанализировать область стека с помощью эвристического алгоритма анализа стека. Используется в архитектуре x86, если нет доступных символов. Он не реализован на других платформах, так как PDATA позволяет проходить все кадры.

public:
 cli::array <Microsoft::VisualStudio::Debugger::CallStack::DkmStackWalkFrame ^> ^ HeuristicWalkFrames(Microsoft::VisualStudio::Debugger::CallStack::DkmStackWalkContext ^ stackWalkContext, Microsoft::VisualStudio::Debugger::CallStack::DkmFrameRegisters ^ registers, System::UInt32 requestSize, System::UInt64 endStackPointer, [Runtime::InteropServices::Out] Microsoft::VisualStudio::Debugger::CallStack::DkmFrameRegisters ^ % nextRegisters, [Runtime::InteropServices::Out] bool % endOfStack);
public Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkFrame[] HeuristicWalkFrames (Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkContext stackWalkContext, Microsoft.VisualStudio.Debugger.CallStack.DkmFrameRegisters registers, uint requestSize, ulong endStackPointer, out Microsoft.VisualStudio.Debugger.CallStack.DkmFrameRegisters nextRegisters, out bool endOfStack);
abstract member HeuristicWalkFrames : Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkContext * Microsoft.VisualStudio.Debugger.CallStack.DkmFrameRegisters * uint32 * uint64 * DkmFrameRegisters * bool -> Microsoft.VisualStudio.Debugger.CallStack.DkmStackWalkFrame[]
Public Function HeuristicWalkFrames (stackWalkContext As DkmStackWalkContext, registers As DkmFrameRegisters, requestSize As UInteger, endStackPointer As ULong, ByRef nextRegisters As DkmFrameRegisters, ByRef endOfStack As Boolean) As DkmStackWalkFrame()

Параметры

stackWalkContext
DkmStackWalkContext

Окне Дкмстакквалкконтекст позволяет различным компонентам, которые проходят, отфильтровывают или проверяют стеки вызовов, хранить закрытые данные, связанные с этим стеком вызовов.

registers
DkmFrameRegisters

Окне Регистрируется для попыток проанализировать.

requestSize
UInt32

Окне Рекуестсизе — это количество кадров, возвращаемых вызывающим объектом. Реализация Хеуристиквалкфрамес может вернуть меньшее число кадров в случае, если стек не содержит такого большого количества кадров.

endStackPointer
UInt64

Окне Адрес стека для отмены очистки. Это значение равно UInt64. MaxValue, если отсутствует указатель на конец стека.

nextRegisters
DkmFrameRegisters

[Out, необязательно] Некстрегистерс указывает регистры следующего кадра (вызывающего "Фрамеобжект"). Это значение будет равно null, если стек завершен, или если Ендстаккпоинтер был достигнут.

endOfStack
Boolean

Заполняет Возвращает значение true, если монитор достиг конца стека.

Возвращаемое значение

DkmStackWalkFrame[]

Заполняет Дкмстакквалкфраме [] представляет кадр в стеке вызовов, который был перемещен, но может быть не отформатирован или отфильтрован. Отформатированные кадры представлены Дкмстаккфраме.

Применяется к