3

在Visual Studio中使用控制檯應用程序時,我將通過按F5將其運行到調試模式來運行該應用程序。偶爾(我不確定這是怎麼發生的),我會回到Visual Studio中的「編輯模式」,調試後的控制檯窗口仍然會打開。如何關閉在Visual Studio中打開的「孤立」控制檯窗口?

它將保持打開狀態,但完全沒有響應。我不能通過右鍵單擊窗口並單擊「關閉」來關閉窗口;我無法通過任務管理器關閉它,而且我無法通過結束特定過程來關閉它(據我所知)。事實上,如果沒有按下電源按鈕重新啓動計算機,我甚至無法退出Windows。

如何在無需重新啓動計算機的情況下關閉窗口?

系統信息:的Windows XP SP3,Visual Studio 2010中

編輯:後我打破進入調試模式下,它通常發生。所有異常都會冒泡並打印到控制檯,所以這不是因爲異常會導致應用程序中斷,但有時候我會逐步執行應用程序,直到我遇到應用程序的一部分,例外情況是抓到了,但之前它實際上被拋回到用戶界面。

+0

這很可能是因爲您的應用程序引發了異常。檢查你是否試圖訪問你不應該訪問的內存或可能是無限循環? – 2010-07-26 14:22:30

+0

@Ran我添加了一些應該有助於澄清的信息。 – 2010-07-26 14:48:47

回答

4

我一直有幾乎同樣的問題,找到了不同的解決方案,所以在這裏發帖的情況下,它可以幫助別人......

對我來說,我運行XP SP3和VS 2005 如果我停止調試控制檯應用程序(有時),命令窗口將不會關閉。

問題是進程實際上已經退出,它不會出現在任務管理器中,所以沒有辦法對窗口或關閉進行任何操作。該窗口仍然響應標記/複製/粘貼/滾動等,但就是這樣。

發現了一個熱修復這裏MS支持: http://support.microsoft.com/kb/982551

+0

非常感謝發佈此信息。這個特殊的問題一直困擾着我,我很高興看到一些可能幫助我的東西。 – 2010-11-18 18:13:04

2

第一部分是正常的,控制檯窗口無法響應關閉請求,而調試器具有處於中斷模式的進程。

調試+停止調試應該終止程序。但是,有一個XP和更早版本特有的問題,如果內核線程正在執行對進程的I/O請求,則進程無法終止。您可以從Taskmgr.exe,進程選項卡中看到此情況。查看+選擇列並勾選「處理」。當你看到它顯示1個正在使用的手柄時,你有一個殭屍進程。

不太清楚你如何擺脫這種狀況,它對於沒有完成的I/O請求是相當具體的。很久以前放棄了XP,我隱約記得殺死devenv.exe來解決問題。 Windows 7很不錯,推薦。

+0

我在家中使用Win 7並喜歡它。希望當我們在年底升級到7時,這個問題就會自行解決。 – 2010-07-26 16:40:25

1

我已經在過去的Windows XP此問題。第一次贏了7場。這個人很煩人。

編輯:殺死devenv.exe適合我。煩人不得不重新啓動sln。

相關問題