如何根据<进程名>获得<进程主窗口句柄>并进行处理?具体描述:
------------------------------------------
进程里有多个相同的进程名(如:12345678.exe),且每个进程都有对应的窗口,而且标题相同.
但这些进程的窗口会随机被隐藏(只是窗口隐藏了,进程还在)
现需要一段代码,功能如下:查找出所有进程名为"12345678.exe"的主窗口句柄,然后用IsWindowVisible判断窗口是否为隐藏,
如为隐藏,则终止进程.
注意:(一定要循环遍历,也就是终止所有进程名为"12345678.exe"且主窗口是隐藏状态的进程) 期待高手解答....
------------------------------------------
进程里有多个相同的进程名(如:12345678.exe),且每个进程都有对应的窗口,而且标题相同.
但这些进程的窗口会随机被隐藏(只是窗口隐藏了,进程还在)
现需要一段代码,功能如下:查找出所有进程名为"12345678.exe"的主窗口句柄,然后用IsWindowVisible判断窗口是否为隐藏,
如为隐藏,则终止进程.
注意:(一定要循环遍历,也就是终止所有进程名为"12345678.exe"且主窗口是隐藏状态的进程) 期待高手解答....
这一步我有现成的函数封装好的: http://www.m5home.com/bbs/dispbbs.asp?boardid=28&Id=745&page=2 调用ListProcess即可取得这两者,再把指定进程名以外的过滤掉.二,使用enumwindow函数,在其回调函数里使用GetWindowThreadProcessId来对所有枚举出的窗体的PID进行比较,挑出目标. 条件就是上一步得到的那些PID列表.三,使用你说的IsWindowVisible定期检测这些已确认的窗口. 如果需要结束进程,调用第一步里面的模块里的CloseProcess并指定PID即可....说起来,好象代码也没几行的.....你折腾一下吧......
请高手给段代码.......(也就是有些程序启动的时候能一切正常的显示它的窗口,在某种情况下程序意外关闭了,但进程里还存在,这时候如果用IsWindowVisible判断窗口的方法可能不好使)