我禁用了所有擴展,並且只打開了1個Sql項目。但是,每當我關閉一個SQL文件時,Visual Studio就會掛起。Visual Studio在關閉.SQL文件時掛起
受影響的版本:
- 2017年企業
- 2015年企業
在此 「掛起時間」 的Visual Studio擁有一個不響應狀態。
它似乎也保持鎖定的時間量與正在關閉/打開的文件數量相關。
編輯:可重放在安全模式
思考devenv的?
我禁用了所有擴展,並且只打開了1個Sql項目。但是,每當我關閉一個SQL文件時,Visual Studio就會掛起。Visual Studio在關閉.SQL文件時掛起
受影響的版本:
- 2017年企業
- 2015年企業
在此 「掛起時間」 的Visual Studio擁有一個不響應狀態。
它似乎也保持鎖定的時間量與正在關閉/打開的文件數量相關。
編輯:可重放在安全模式
思考devenv的?
真正的解決方案會與MS的更新。然而,現在,關閉我參與'Visual Studio體驗改善計劃'似乎解決了這個問題。
您可以通過單擊幫助 - >發送反饋 - >設置(2017年,不確定2015年左右)來檢查您是否註冊了此程序。
看起來關閉時.sql文件窗口,VS是產生一個Windows錯誤報告(WER)事件:
Fault bucket , type 0
Event Name: VisualStudioNonFatalErrors2
Response: Not available
Cab Id: 0
Problem signature:
P1: devenv.exe
P2: 15.0.26430.12
P3: vs.platform.hwndwrapper.destroy-window-error
P4: unknown
P5: Microsoft.VisualStudio.Shell.15.0
P6: Microsoft.VisualStudio.PlatformUI.HwndWrapper.DestroyWindowCore
P7: unknown
P8: unknown
P9: unknown
P10: unknown
這些關聯到每一個試圖關閉窗口。取消選中構建配置管理器中的構建/部署框似乎沒有幫助(我正在運行VS 2017 Enterprise)。
運行procmon中示出了在手柄後,關閉一個窗口以wermgr.exe關閉我的機器上一個11秒的延遲:
12:19:31.2071581 AM devenv.exe 6564 CloseFile C:\Windows\SysWOW64\wermgr.exe SUCCESS
12:19:32.7423468 AM devenv.exe 6564 Thread Exit SUCCESS Thread ID: 16288, User Time: 0.0000000, Kernel Time: 0.0000000
12:19:36.6511179 AM devenv.exe 6564 Thread Create SUCCESS Thread ID: 8576
12:19:38.1531428 AM devenv.exe 6564 Thread Exit SUCCESS Thread ID: 8576, User Time: 0.0000000, Kernel Time: 0.0000000
12:19:42.7939996 AM devenv.exe 6564 Thread Create SUCCESS Thread ID: 12052
12:19:42.7952451 AM devenv.exe 6564 Thread Exit SUCCESS Thread ID: 12052, User Time: 0.0000000, Kernel Time: 0.0000000
12:19:42.7953980 AM devenv.exe 6564 Thread Create SUCCESS Thread ID: 6892
12:19:42.7984705 AM devenv.exe 6564 RegQueryKey HKLM SUCCESS Query: HandleTags, HandleTags: 0x0
這似乎是一個產品的錯誤,沒有已知的解決方法,此時。
我的男人驚人的見解。也許我們應該在VS錯誤論壇中複製這個線程? – pimbrouwers
我在這裏很新...不確定最好的方法來做到這一點。 – toddg26
不用擔心,我已經爲此提交了一張票。 – pimbrouwers
對我來說,解決方法是:
更新這些擴展:
禁用/重新啓用以下VS 2017企業擴展:
當我試圖找出哪些擴展是導致掛起,我不能確定具體的一個。 無論如何,這種方法工作,我現在已經啓用所有三個擴展。
這一切都很奇怪,因爲我在上個星期五離開工作站時打開了VS。而這個星期一上午,它試圖打開任何.sql文件時就開始掛起,即使文件是空的。
您是否嘗試過devenv/SafeMode?另一個選擇是將另一個Visual Studio附加到第一個Visual Studio,以在關閉第一個Visual Studio時檢查該Callstack,也許它正在連接到某處並獲取超時。 –
SafeMode會產生相同的結果。我使用連接監視器來查看它是否伸出並懸掛。但沒有骰子。好主意雖然! – pimbrouwers