0:029> !help mk
SOSEX - Copyright 2007-2012 by Steve Johnson - http://www.stevestechspot.com/
To report bugs or offer feedback about SOSEX, please email sjjohnson@pobox.com
mk
Usage: !sosex.mk [-l] [-p] [-a] [-c] [-cc]
Produces and displays a merged stack trace of managed and unmanaged frames.
Local variables and parameters can be listed by passing -l, -p, or -a
-l = Locals
-p = Parameters
-a = Locals and Parameters
-c = Clean (similar to the 'kc' command). Does not show frame numbers, ESP, EIP or source info.
-c cannot be used with any other switches.
-cc = Same as -c, but also strips namespaces. Provides the most compact stack trace display.
Sample output:
0:029> !mk
Thread 29:
SP IP
00:U 00000000053cc050 000007fefd2ccacd KERNELBASE!RaiseException+0x3d
......
11:U 00000000053ce360 000007fef1fb3310 mscorwks!CorLaunchApplication+0xee90
12:M 00000000053ce510 000007ff001b064b WebApplication1._Default.Go(Int32, System.String)(+0x0 IL,+0x7b Native) [D:\temp\WebApplication1\Default.aspx.cs @ 18,9]
13:M 00000000053ce550 000007ff001b05a6 WebApplication1._Default.Page_Load(System.Object, System.EventArgs)(+0xd IL,+0x46 Native) [D:\temp\WebApplication1\Default.aspx.cs @ 14,13]
......
16:M 00000000053ce5e0 000007feec690584 System.Web.UI.Control.OnLoad(System.EventArgs)(+0x0 IL,+0x84 Native)
------------------------------------------------------------------------------------------------------------
如果想查看方法参数,可以加上-p,如
0:029> !mk -p
Thread 29:
SP IP
。。。。。。
12:M 00000000053ce510 000007ff001b064b WebApplication1._Default.Go(Int32, System.String)(+0x0 IL,+0x7b Native) [D:\temp\WebApplication1\Default.aspx.cs @ 18,9]
[A0]:this:000000013f7acbf0 (WebApplication1._Default)
[A1]:a:0x5 (System.Int32)
[A2]:b:000000013f745878 (System.String) STRVAL="abcde"
13:M 00000000053ce550 000007ff001b05a6 WebApplication1._Default.Page_Load(System.Object, System.EventArgs)(+0xd IL,+0x46 Native) [D:\temp\WebApplication1\Default.aspx.cs @ 14,13]
[A0]:this:000000013f7acbf0 (WebApplication1._Default)
[A1]:sender:000000013f7acbf0 (System.Object)
[A2]:e:00000001bf6264a0 (System.EventArgs)
------------------------------------------------------------------------------------------------------------
如果想查看局部变量值,可以加上-l,如
0:029> !mk -l
Thread 29:
SP IP
12:M 00000000053ce510 000007ff001b064b WebApplication1._Default.Go(Int32, System.String)(+0x0 IL,+0x7b Native) [D:\temp\WebApplication1\Default.aspx.cs @ 18,9]
[L0]:tmp:0x5 (System.Int32)
13:M 00000000053ce550 000007ff001b05a6 WebApplication1._Default.Page_Load(System.Object, System.EventArgs)(+0xd IL,+0x46 Native) [D:\temp\WebApplication1\Default.aspx.cs @ 14,13]
可以看到在Go方法里有个int类型的变量tmp,值为0x5,也就是5,后面中括号里还标注了源代码的行和列数