是否有像.call for .NET这样的命令?

Tho*_*ler 2 .net windbg

.call可能调用本机函数(从未实际尝试过它).是否有一个类似的命令来调用.NET函数来模仿这个结果

我只在寻找WinDbg解决方案.我知道Visual Studio有立即窗口,像Hawkeye这样的其他工具可以调用事件处理程序,也许Snoop也可以调用方法.

jos*_*ley 7

简短的回答是否定的.

问题是您无法在任意线程上运行托管代码.即使你处于良好的线程,它也很容易导致垃圾收集,终结器等问题.

在过去,我们尝试创建一个本机入口点,然后调用托管代码.它很混乱,并且在需要它的时候没有很好的工作.

编辑:
.call通过将一堆东西推入堆栈,跳转到入口点,然后继续执行(所有在当前选定的线程上)来工作.不幸的是,WinDbg本身并不了解托管代码,它如何与系统交互,或者如何安全地调用它.Visual Studio调试器(这是一个非常不同的调试引擎)知道托管代码以及如何干净地执行方法.