VC中如何获得其他进程的窗口句柄

VC中如何获得其他进程的窗口句柄,第1张

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中如何获得其他进程的窗口句柄、一个进程有很多窗口,怎么取这个进程的下所有窗口句柄、等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/web/9635406.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2023-04-30
下一篇 2023-04-30

发表评论

登录后才能评论

评论列表(0条)

保存