当一个应用程序比较大时,菜单比较多时,特别是初次接触这个程序的源码时,就会很难找到这个程序的入口点。下面通过SPY++可以很快速的获取到这个入口(程序要有源代码)

1、运行这个应用程序,例如a.exe,此时打开spy++,将Window找到当前a.exe,再将Messages只捕捉WM_COMMAND消息。

通过spy++查找应用程序菜单对应函数的方法_应用程序

通过spy++查找应用程序菜单对应函数的方法_#define_02

2、操作一个a.exe上想找到入口的一个菜单,spy++会捕捉到这个消息;

通过spy++查找应用程序菜单对应函数的方法_应用程序_03

 

3、可以看到这个消息的WM_COMMAND的消息wID是:33836,根据这个id到源文件中resource.h中查找,可以找到类似于下面的一句话:

#define ID_XX_XXXX 33836

这里的ID_XX_XXXX就是要找的消息菜单id,再到源文件中找ID_XX_XXXX,就会找到类似于下面的语句:

ON_COMMAND(ID_XX_XXXX, OnXXXX)

此时函数OnXXXX就是这个消息响应的函数。