hur.cn - 华软网

 热门搜索

通过handle得到hwnd

  作者:未知    来源:网络    更新时间:2011/9/29
比如我想得到  酷狗 的 hwnd   ,想sendmessage。
通过进程快照 得到了id,然后openprocess得到了 handle,这时如何得到hwnd

---华软 网友回答---
http://social.msdn.microsoft.com/forums/en-us/vclanguage/thread/2547FE7A-574E-40E9-82B3-22CCFE4B077D
---华软网友回复---
可以调用EnumWindows枚举所有的窗口看看否属于这个进程
回调函数中GetWindowThreadProcessId(hWnd,   &dwProcessId); 看看ID是否与酷狗相等

不知道酷狗的是否可以直接FindWindow?若是这样省事多了
---华软网友回复---
一个handle可以对应N个hwnd。你需要指定更多信息,比如标题栏字符,窗口类...
---华软网友回复---
引用 3 楼 ndy_w 的回复:
一个handle可以对应N个hwnd。你需要指定更多信息,比如标题栏字符,窗口类...

ID就可以
---华软网友回复---
用GetWindow可以吗 ?
---华软网友回复---
自绘窗口的里面子窗口句柄的获取不了的
---华软网友回复---
引用 2 楼 evi10r 的回复:
可以调用EnumWindows枚举所有的窗口看看否属于这个进程
回调函数中GetWindowThreadProcessId(hWnd, &dwProcessId); 看看ID是否与酷狗相等

不知道酷狗的是否可以直接FindWindow?若是这样省事多了

但是现在  用 GetWindowThreadProcessId,  hwnd就是我想要得到的 ,怎么设置这个参数?  另外FindWindow的话 酷狗的标题总是变化的 。
---华软网友回复---
引用 7 楼 pyx93 的回复:
但是现在 用 GetWindowThreadProcessId, hwnd就是我想要得到的 ,怎么设置这个参数? 另外FindWindow的话 酷狗的标题总是变化的 。

用spy+查看酷狗的窗口类,然后FindWindow找出窗口句柄。
---华软网友回复---
spy++最省力!
---华软网友回复---
EnumWindows(),然后调用GetWindowThreadProcessId();根据ID比对
---华软网友回复---
回调函数中GetWindowThreadProcessId(hWnd, &dwProcessId); 
这个是枚举出来的所有的 肯定会找到酷狗的窗口
对比时发现相同就可以断定这个hwnd是酷狗的了       
华软声明:本内容来自网络,如有侵犯您版权请来信指出,本站立即删除。