关闭一个窗口(通过它的窗口句柄),而不关闭拥有它的进程
我试图关闭个人窗口从一个进程的代码,我没有访问。该程序产生了一个按钮按下时看起来像Internet Explorer窗口,但他们不创建iexplorer.exe进程(他们都显然住在应用程序进程内)。我已经设法通过一些API调用来获取每个“假”IE窗口的进程句柄和窗口句柄,但我无法弄清楚如何关闭进程中的给定窗口。关闭一个窗口(通过它的窗口句柄),而不关闭拥有它的进程
我已经试过
SendMessage(WindowHandles[i], 0x0010, 0, 0);
这是WM_CLOSE消息,但它在关闭过程中的所有窗口,结束进程。有没有办法以编程方式做类似于当我按下窗口右上角的X时发生的事情?该窗口没有执行任何计算或影响任何其他内存空间,所以我可以结束它,但是我想要,但是我尝试了所有我知道该怎么做的东西(DestroyWindow;它返回错误5权限被拒绝,WM_CLOSE;关闭该进程,WM_QUIT;它给出错误2文件没有找到,什么都不做)。
任何想法?
您可以发送SW_HIDE应该在技术上的工作,但它不会关闭它们,你可以在 http://msdn.microsoft.com/en-us/library/ms633548(v=vs.85).aspx
好的建议,但这是否意味着窗口只是在某个过程中占用内存?不是最理想的解决方案,但我会做到这一点,如果我必须... – 2011-04-21 18:11:54
另一种方式是模拟鼠标点击:)在X的顶部。因为你已经有句柄WM_LBUTTONDOWN然后WM_LBUTTONUP,可能不是一个不错的解决方案。 – Ekim 2011-04-21 18:19:19
哈哈,这绝对是我想过的事情,但我想我会在开始做这样的事情之前问问周围的事情! – 2011-04-21 19:36:40
WM_CLOSE找到更多的信息是这样做的正确方法。 – 2011-04-21 18:15:18
当您使用X按钮关闭窗口时,该过程是否结束? – 2011-04-21 18:18:11