在Visual C++中能够对Windows消息设置断点,即消息断点。但程序产生某条消息时,程序进入调试状态。本实例将实现当用户按下鼠标左键时进入调试状态,如图1.71所示。
消息断点需要通过Breakpoints对话框设置。在Breakpoints对话框中选择Messages选项卡,在Break at WndProc文本框中输入回调函数名,然后在中间组合框中选择需要监控的消息事件。当监控的消息事件触发时,程序就会进入调试模式。
(1)创建基于对话框的应用程序。
(2)按Ctrl+B组合键打开断点窗口,选择Messages选项卡。
(3)在上方的组合框中输入窗口过程"AfxWndProc",在下方的组合框中输入产生中断的消息,如"AfxWndProc",如图1.72所示。
图1.71 利用消息断点进行程序调试
图1.72 Breakpoints对话框
(4)运行程序,当用户在对话框中单击鼠标左键时程序进入调试模式。
心法领悟025:使用消息断点的注意事项。
通过消息断点可以很方便地判断出某些消息是否在应用程序中产生,但有些自定义的消息就无法使用该方法进行调试,自定义消息只能通过条件断点方式调试。