我通过DLL 注入到一个游戏中  在游戏呼出窗口 (就是做辅助)
然后我怎么通过DLL 获取游戏窗口的窗口句柄呢?不要用FindWindow

解决方案 »

  1.   

    不用FindWindow那就用GetWindow枚举窗口
      

  2.   

    EnumWindows枚举窗口,然后筛选
    FindWindow为什么不用
      

  3.   

    为什么不用FindWindow?
    是该游戏有保护,用FindWindow取不到吗?
      

  4.   

    可以试试GetGUIThreadInfo函数,一般来讲这时候激活的的就是游戏窗口了。
      

  5.   

    我想通过 获取  注入游戏进程的   游戏进程ID 然后通过进程ID获取 游戏窗口的窗口句柄  代码怎么实现?
      

  6.   

    既然是 DLL 注入
    当然用hook api来的快
      

  7.   

    不能call吗?一定要发消息吗?
      

  8.   

    不知道楼主为什么不用FindWindow,不过要想从进程ID拿到窗口句柄,可以这样:
    EnumWindows可以枚举所有顶层窗口,而GetWindowThreadProcessId可以拿到
    窗口句柄对应的进程iD,遍历一下就搞定了。参考:
    http://www.vckbase.com/document/viewdoc/?id=404