Ескертпе
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Жүйеге кіруді немесе каталогтарды өзгертуді байқап көруге болады.
Бұл бетке кіру үшін қатынас шегін айқындау қажет. Каталогтарды өзгертуді байқап көруге болады.
Расширение !for_each_frame выполняет команду отладчика один раз для каждого кадра в стеке текущего потока.
!for_each_frame ["CommandString"]
!for_each_frame -?
Параметры
CommandString
Указывает команды отладчика для выполнения по одному разу для каждого кадра. Если CommandString содержит несколько команд, их необходимо разделить точкой с запятой и заключить CommandString в кавычки. Если включить несколько команд, отдельные команды в CommandString не могут содержать кавычки. Если вы хотите ссылаться на индекс текущего кадра в CommandString, используйте псевдорегистр @$frame.
-?
Отображает текст справки для этого расширения в окне команды отладчика.
DLL-библиотеки
Ext.dll
Дополнительная информация
Дополнительные сведения о локальном контексте см. в разделе "Изменение контекстов".
Замечания
Если аргументы не указаны, расширение !for_each_frame отображает список всех кадров и их индексов кадров. Чтобы получить более подробный список всех кадров, используйте команду k (Display Stack Backtrace).
Команда k проходит до 256 кадров. Для каждого перечисленного кадра этот кадр временно становится текущим локальным контекстом (аналогично команде .frame (Set Local Context). После установки контекста выполняется CommandString . После того как все кадры были использованы, локальный контекст сбрасывается на значение, которое оно было до использования расширения !for_each_frame .
Если включить CommandString, отладчик отображает кадр и его индекс перед выполнением команды для этого кадра.
Следующая команда отображает все локальные переменные для текущего стека.
!for_each_frame !for_each_local dt @#Local