调试带有许多事件的应用程序

本文关键字:应用程序 事件 许多 调试 | 更新日期: 2023-09-27 18:12:00

我在c# VS 2015。我试图调试应用程序(不是我写的)使用许多事件。有很多按钮,都是发送事件。问题是有些事件是由dll发送的,例如:

void Setalarm(int ID)
{
    functionInDLL.sendAlarm(ID); //raise an alarmEvent (don't know the exact name)
}

我看不到functionInDLL中的代码,所以我不知道发送的是哪个事件。

当事件是raise/catch时是否可能中断?

在这种情况下,它希望在引发alarmEvent时调用的所有函数中都有一个中断

调试带有许多事件的应用程序

也许可以删除dll引用。在出现错误的地方添加断点。添加dll引用。

这将花费您一些时间,但这可能是最简单的方法。

sendAlarm方法上设置一个断点,然后按F11。这将尝试进入方法,因为你没有源代码,Visual Studio将进入第一个代码(即你的事件处理程序)。不用说,这只适用于带有事件处理程序的事件。

当您需要发现所有引发的事件时,您需要为每个事件添加处理程序。没有其他方法,因为没有处理程序的事件将不会被引发。