HWND nhWnd[10];
int count;
BOOL CALLBACK EnumWndProc(HWND hwnd, LPARAM lParam)
{
DWORD dwID ;
GetWindowThreadProcessId(hwnd, &dwID) ;
if (dwID == (DWORD)lParam && IsWindowVisible(hwnd) && GetParent(hwnd) == NULL)
{
nhWnd[count++] = hwnd;
}
return (count == 10) false : true;
}
void GetProcessTopWindows(DWORD dwPID)
{
count = 0;
EnumWindows((WNDENUMPROC)EnumWndProc, (LPARAM)dwPID);
}
GetProcessTopWindows(dwPID)//dwPID进程句柄
将属于 dwPID进程的所有顶层可见窗口句柄保存到nhWnd 中 最多 10 个
给你一个思路吧:如果是顶级窗口类名和标题都知道的话
用api的寻找顶级窗口
找到顶级窗口句柄
之后在用
api的寻找子窗口
寻找子窗口下的标题和类名
就可以取到子窗口的句柄
之后向该句柄发送信息就行!
以上就是关于VC中如何获得其他进程的窗口句柄全部的内容,包括:VC中如何获得其他进程的窗口句柄、一个进程有很多窗口,怎么取这个进程的下所有窗口句柄、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)