我测试了,始终得不到WM_PAINT消息,为什么?难道它所得到的消息有限制??

解决方案 »

  1.   

    WH_CALLWNDPROC只对SendMessage发送的消息有作用
    而WM_PAIN消息不是SendMessage发送的
    而是直接放到消息对列里面
    然后由消息循环
    while (GetMessage (&msg, 0, 0, 0))
    {
       TranslateMessage (&msg);
       DispatchMessage (&msg)
    };
    处理的
    所以得不到WM_PAINT消息
      

  2.   

    不信你可以用spyxx看看spyxx中Hook到的消息,只要是post的消息(queued message),都得不到窗口过程的返回值spyxx中hook到的WM_PAINT消息就没有窗口过程的返值