Як знайти слід стека у Visual Studio?


Відповіді:


277

Під час налагодження перейдіть до налагодження -> Windows -> стек викликів


38
==> "під час налагодження" <==
прабхакаран

2
Стек викликів у VS 2013 ніколи не показує нічого корисного. Непогано було б показати абонентам об'єктів, які викидають необроблений виняток. Чи є прихований варіант, щоб зробити його корисним? Можливо, ви можете розширити свою відповідь, щоб навести приклади.
Джеймс

1
Подобається, як усі в інших темах, подібних до цієї, повністю пропустили НАЙБІЛЬШУ важливу частину відповіді.
AvetisG

Приємно, спасибі! Це працює навіть під час роботи VS CE 2015 + IE9 та налагодження сліду стека JavaScript IE9!
Олексій Володко

130

Під час налагодження , коли ви потрапили на перелом .

CTRL+ ALT+C

введіть тут опис зображення


16
+1 для фотографії = D (мені подобається, коли хтось наклав на виконання, щоб зробити знімок екрана)
Мішель Ейрес

39

Клавіша швидкого доступу за замовчуванням - Ctrl-Alt-C.


16
Важливо зазначити, що ви повинні бути в режимі налагодження, щоб побачити вікно стеки викликів.
dss539

1
@ dss539 Я думаю, у вас доданий налагоджувач , він може налагоджувати або випускати збірку. Також важливо, щоб у вас було завантажено достатню кількість символів для сеансу налагодження, інакше ви отримаєте оманливі / сміттєві виклики.
Кріс О

@ChrisO - Так, я мав на увазі, що Visual Studio має перебувати у стані "налагодження". Вибачте, я можу побачити, як моє оригінальне формулювання залишає можливість для неправильного тлумачення.
dss539

16

Ви маєте на увазі пошук сліду стека викинутого місця виключення ? Це або налагодження / винятки, або краще - Ctrl-Alt-E. Встановіть фільтри за винятками, на які потрібно вийти.

Існує навіть спосіб реконструювати тріскач після того, як виняток був спійманий, але це справді неприємно . Набагато, набагато простіше встановити перерву на кидок.


5

Використання вікна стеку викликів

Щоб відкрити вікно Стека викликів у Visual Studio, у меню Налагодження виберіть Windows> Стек викликів. Щоб встановити локальний контекст для певного рядка на дисплеї сліду стека, двічі клацніть перший стовпець рядка.

http://msdn.microsoft.com/en-us/library/windows/hardware/hh439516(v=vs.85).aspx


1

Розглянемо це як поточне оновлення (Windows 10 (версія 1803) та Visual Studio 2017): мені не вдалося переглянути вікно слідів стека та знайшов пункт / пункт меню для його перегляду. Подальше дослідження, здається, ця функція недоступна в Windows 10. Для отримання додаткової інформації зверніться до:

https://docs.microsoft.com/en-us/windows-hardware/drivers/debugger/viewing-the-call-stack-in-visual-studio

Скопійовано із вищенаведеного посилання: "Ця функція недоступна в Windows 10, версії 1507 та новіших версіях WDK."


Це здається дивним. Хтось має уявлення про альтернативний спосіб зробити це у версії 1507 і пізнішої? Ця функція дуже корисна ...
nimble_ninja

0

Для Visual Studio 2019 ярлик (під час налагодження та зупинки на точці розриву) :

Ctrl+ Alt+ Cі тепер ви також можете використовувати Ctrl+L

Скріншот досить старий. Ось один для Visual Studio 2019 (під меню налагодження):

Опція меню стека викликів Visual Studio 2019

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.