【问题标题】:Destroy process-less console windows left by Visual Studio debug sessions销毁 Visual Studio 调试会话留下的无进程控制台窗口
【发布时间】: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


    【解决方案1】:
    【解决方案2】:

    我知道这不是你想听到的,但摆脱这些窗口的唯一方法是重新启动计算机

    显然 windows 团队正在尝试修复它:

    http://blogs.msdn.com/debugger/archive/2010/03/11/help-my-console-windows-won-t-go-away.aspx

    但似乎并没有发生太多事情

    【讨论】:

    • 只是这些特定的窗口无法清除,还是适用于任何缺少关联进程的窗口?
    【解决方案3】:

    这个问题仍然是 Windows 7 上的 Visual Studio 2010 的问题!

    See this thread

    【讨论】:

      猜你喜欢
      • 2020-11-09
      • 2014-05-27
      • 2010-10-31
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-11-23
      • 1970-01-01
      • 2023-04-09
      相关资源
      最近更新 更多