Làm cách nào để tìm dấu vết ngăn xếp trong Visual Studio?


Câu trả lời:


276

Trong khi gỡ lỗi , hãy đến Debug -> Windows -> Call Stack


38
==> "trong khi gỡ lỗi" <==
prabhakaran

2
Ngăn xếp cuộc gọi trong VS 2013 không bao giờ hiển thị bất cứ điều gì hữu ích. Nó sẽ là tốt đẹp cho nó để hiển thị người gọi của các đối tượng ném một ngoại lệ chưa xử lý. Có một tùy chọn ẩn để làm cho nó hữu ích? Có lẽ bạn có thể mở rộng câu trả lời của bạn để cung cấp các ví dụ.
James

1
Yêu làm thế nào mọi người khác trong các chủ đề khác tương tự như thế này hoàn toàn bỏ lỡ phần quan trọng nhất của câu trả lời.
AvetisG

Rất vui được, cảm ơn! Điều này thậm chí hoạt động, trong khi chạy VS CE 2015 + IE9 và gỡ lỗi theo dõi ngăn xếp JavaScript của IE9!
Alexey Volodko

130

Trong khi gỡ lỗi , khi bạn đạt điểm dừng .

CTRL+ ALT+C

nhập mô tả hình ảnh ở đây


16
+1 cho ảnh = D (Tôi thích khi ai đó thực thi lệnh chụp ảnh màn hình)
Michel Ayres

39

Phím tắt mặc định là Ctrl-Alt-C.


16
Điều quan trọng cần lưu ý là bạn phải ở chế độ 'gỡ lỗi' để xem cửa sổ ngăn xếp cuộc gọi.
dss539

1
@ dss539 Tôi nghĩ rằng bạn có trình gỡ lỗi được đính kèm , nó có thể gỡ lỗi hoặc phát hành bản dựng. Điều quan trọng nữa là bạn phải tải đủ các biểu tượng cho phiên gỡ lỗi của mình, nếu không, bạn sẽ nhận được các bảng gọi rác gây hiểu lầm.
Chris O

@ChrisO - Vâng, ý tôi là Visual Studio phải ở trạng thái 'gỡ lỗi'. Xin lỗi, tôi có thể thấy cách từ ngữ ban đầu của tôi rời khỏi phòng để giải thích sai.
dss539

16

Bạn có nghĩa là tìm thấy một dấu vết ngăn xếp của vị trí ngoại lệ ném ? Đó là Gỡ lỗi / Ngoại lệ hoặc tốt hơn - Ctrl-Alt-E. Đặt bộ lọc cho các ngoại lệ bạn muốn phá vỡ.

Thậm chí còn có cách để xây dựng lại ngăn xếp ném sau khi ngoại lệ bị bắt, nhưng điều đó thực sự khó chịu . Rất nhiều, dễ dàng hơn nhiều để thiết lập một break trên ném.



1

Hãy coi đây là bản cập nhật hiện tại (Windows 10 (Phiên bản 1803) và Visual Studio 2017): Tôi không thể xem cửa sổ theo dõi ngăn xếp và đã tìm thấy một mục tùy chọn / menu để xem nó. Khi điều tra thêm, có vẻ như tính năng này không có sẵn trên Windows 10. Để biết thêm thông tin, vui lòng tham khảo:

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

Sao chép từ liên kết trên: "Tính năng này không có sẵn trong Windows 10, phiên bản 1507 và các phiên bản mới hơn của WDK."


Điều này có vẻ thực sự kỳ lạ. Có ai có ý tưởng nào về một cách khác để làm điều này trong phiên bản 1507 trở lên không? Tính năng này rất hữu ích ...
nimble_ninja

0

Đối với Visual Studio 2019, phím tắt (trong khi gỡ lỗi và dừng ở điểm dừng) là:

Ctrl+ Alt+ Cvà bây giờ bạn cũng có thể sử dụng Ctrl+L

Ảnh chụp màn hình khá cũ. Đây là một cái cho Visual Studio 2019 (trong menu gỡ lỗi):

Tùy chọn menu ngăn xếp cuộc gọi Visual Studio 2019

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.