我正在编写一个处理窗口绘图消息的钩子 dll。
我发现对于Vista及以上版本,钩子dll接收到一些未知的消息ID,具体为0x90~0x95。
我做了一些谷歌搜索,发现了一个msdn 链接和this,它告诉我它们是什么消息:
#define WM_UAHDESTROYWINDOW 0x0090
#define WM_UAHDRAWMENU 0x0091
#define WM_UAHDRAWMENUITEM 0x0092
#define WM_UAHINITMENU 0x0093
#define WM_UAHMEASUREMENUITEM 0x0094
#define WM_UAHNCPAINTMENUPOPUP 0x0095
但是我在任何头文件中都找不到宏的定义WM_UAHDRAWMENUITEM
,编译器抱怨“未定义的符号”。我对“WM_UAHDRAWMENUITEM”进行了全局搜索,但一无所获。
目前我正在使用 0x92 来处理这个消息。
我的问题是:如何用 Windows 定义的宏很好地替换硬编码的 0x92?