2011-11-16 13 views
24

Tôi có một bãi chứa được tạo từ một ứng dụng được quản lý. Tôi đang sử dụng các phạm vi SOS/SOSEX để dễ dàng phân tích kết xuất của tôi. Tôi muốn liệt kê xuống ngăn xếp cuộc gọi của tất cả các chuỗi được quản lý như chúng tôi ~*kb với các ứng dụng gốc. làm sao chúng ta làm việc đó bây giờ?Làm cách nào để liệt kê tất cả các chuỗi được quản lý bằng WinDBG?

Trả lời

37

Sử dụng !EEStack lệnh:!

0:007> .load sos 
0:007> !EEStack 

Xem SOS.dll (SOS Debugging Extension)

+0

Có thể với SOSEX không? – sarat

+4

.loadby sos clr tốt hơn (đối với .NET 4) hoặc .loadby sos mscorwks –

+2

Đối với .net 4 i đã tải xuống phiên bản .net 4 của sos, Psscor4 http://www.microsoft.com/en-gb/download/ details.aspx? id = 21255, đặt dll vào thư mục windbg - khớp đúng dll với phiên bản windbg chính xác (32bit | 64bit) rồi tải '.load Psscor4.dll' –

8

với sosex, sử dụng ~ * e mk (~ - chủ đề, * - tất cả, e - thực hiện lệnh này, mk - Hầu hết các lệnh trong sosex phản chiếu lệnh gốc, nhưng có m (được quản lý) ở phía trước chúng.

+0

sosex cho thắng lợi! –

23

Lệnh này sẽ đổ tất cả các chuỗi được quản lý

~*e!dumpstack