WinDbg与SOS:如何查看方法的返回类型
在WinDbg(加载SOS扩展)中查看方法返回类型的方法
不用ildasm、ILSpy等外部工具时,可通过以下SOS命令直接在WinDbg中获取方法的返回类型:
1. 使用!dumpmd命令查看方法描述符
从!dumpmt -md的输出中,提取目标方法对应的方法描述符地址(示例中是第二列的00007ffb1c1a4c38这类地址),将其传入!dumpmd命令:
!dumpmd 00007ffb1c1a4c38
命令输出里会明确标注Return Type字段,直接显示方法的返回类型(如System.String或Void)。
示例输出片段:
Method Name: System.String.Concat(System.String, System.String)
...
Return Type: System.String
...
2. 使用!dumpil命令查看IL代码定义
基于!dumpmt输出中的方法本地代码地址(第一列,如00007ffb1c529ae0)或方法描述符地址,执行!dumpil命令:
!dumpil 00007ffb1c529ae0
在IL代码的开头定义行中,能直接看到返回类型:
.method public hidebysig static string Concat(string str0, string str1) cil managed
{
// IL指令...
}
如果是无返回值方法,定义行会显示void,例如:
.method public hidebysig static void SomeMethod() cil managed
内容的提问来源于stack exchange,提问作者rbm
相关产品推荐
相关产品推荐

