是否可以将标记有MethodImplOptions.InternalCall的方法链接到其实现?

在尝试查找exception的可能原因时,我正在使用Reflector跟踪代码路径。 我已经越来越深入,但结果是一个方法调用看起来像:

[MethodImpl(MethodImplOptions.InternalCall)] private extern void SomeMethod(int someParameter); 

该方法的这个标记告诉框架在某处调用C ++函数。 有没有办法找出实际调用的方法,反过来又可能调用什么方法?

注意:我真的不想看到这个方法的源代码,我只是想知道可能抛出exception的东西,我看到它来自这个方法调用。

内部调用最终调用CLR中的C ++函数。 您可以在Rotor源代码中找到它们。 查看clr \ src \ _vm \ ecall.cpp以查找从.NET可见名称到CLR函数名称的映射。 请注意源已过时。

如果要跟踪哪些方法可以抛出给定类型的exception,可以使用http://www.red-gate.com/products/Exception_Hunter/index.htm