我要实现在的是给其他程序的一窗口换图,不知是否要拦截系统的wm_paint消息?因刚学hook,不太懂,望得到大家的帮助,最好有相似源码,谢谢!

解决方案 »

  1.   

    可以试试用SetWindowsHookEx钩WH_CALLWNDPROCRET,判断窗口句柄和WM_ERASEBKGND消息来处理。
      

  2.   

    用不到hook吧,先找到这个窗口的句柄,再找到这个窗口的客户区或者你想画的DC,接下来直接画上去不久得了?
    不是很明白你的需求。
      

  3.   

    方法如下:
    写一个DLL注入到目的进程中
    在DLL_PROCESS_ATTACH中
    开启线程
    找到窗口句柄
    setwindowlong替换掉窗口的窗口过程
    在你的窗口过程中
    拦截WM_PAINT消息
    不要忘了调用原来的窗口过程