【发布时间】:2011-11-20 08:54:06
【问题描述】:
Windows XP 安全更新 KB978037 的一个已知错误可能出现在 Visual Studio 2005(和 2008)中不再存在。这个问题在这里进一步讨论:
Visual studio debug console sometimes stays open and is impossible to close
这些僵尸窗口不能通过任务栏或任务管理器关闭,通常需要关闭/打开电源才能摆脱它们。即使在一天的时间里,你也可以积累很多,这会堵塞你的任务栏,而且通常很烦人。
我想我会敲出一个简单的 C++ Win32 实用程序,通过将窗口句柄作为命令行参数传递并将其转换为 HWND 来尝试在这些窗口上调用 DestroyWindow()。
我将句柄从字符串转换为 DWORD,然后将 DWORD 转换为 HWND。这似乎正在工作,就好像我在它成功的句柄上调用 GetWindowInfo() 一样。然而,在句柄上调用 DestroyWindow() 失败并出现错误 5(访问被拒绝),可能是因为调用者进程(即我的应用程序)不拥有相关窗口。
关于我如何摆脱僵尸窗口的任何想法,无论是通过上述方法还是除重新启动之外的任何其他替代方法?我在公司环境中,因此无法安装/卸载更新/服务包等。
【问题讨论】:
标签: windows visual-studio winapi