8

我禁用了所有擴展,並且只打開了1個Sql項目。但是,每當我關閉一個SQL文件時,Visual Studio就會掛起。Visual Studio在關閉.SQL文件時掛起

受影響的版本:

  • 2017年企業
  • 2015年企業

在此 「掛起時間」 的Visual Studio擁有一個不響應狀態。

它似乎也保持鎖定的時間量與正在關閉/打開的文件數量相關。

編輯:可重放在安全模式

思考devenv的?

+0

您是否嘗試過devenv/SafeMode?另一個選擇是將另一個Visual Studio附加到第一個Visual Studio,以在關閉第一個Visual Studio時檢查該Callstack,也許它正在連接到某處並獲取超時。 –

+0

SafeMode會產生相同的結果。我使用連接監視器來查看它是否伸出並懸掛。但沒有骰子。好主意雖然! – pimbrouwers

回答

19

打開MS門票:https://developercommunity.visualstudio.com/content/problem/67789/visual-studio-hangs-when-closing-sql-files.html

真正的解決方案會與MS的更新。然而,現在,關閉我參與'Visual Studio體驗改善計劃'似乎解決了這個問題。

您可以通過單擊幫助 - >發送反饋 - >設置(2017年,不確定2015年左右)來檢查您是否註冊了此程序。

+0

令人驚歎。偉大的找到兄弟! – pimbrouwers

+0

謝謝。您。非常。許多!!! –

+1

@RuslanK。很高興聽到這幫助別人! – pimbrouwers

0

看起來關閉時.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 

這似乎是一個產品的錯誤,沒有已知的解決方法,此時。

+0

我的男人驚人的見解。也許我們應該在VS錯誤論壇中複製這個線程? – pimbrouwers

+0

我在這裏很新...不確定最好的方法來做到這一點。 – toddg26

+0

不用擔心,我已經爲此提交了一張票。 – pimbrouwers

0

對我來說,解決方法是:

  1. 更新這些擴展:

    • ReadyRoll爲VS2017
    • SQL提示符核心
  2. 禁用/重新啓用以下VS 2017企業擴展:

    • ReadyRoll爲VS2017
    • SQL提示符核心
    • SQL搜索

當我試圖找出哪些擴展是導致掛起,我不能確定具體的一個。 無論如何,這種方法工作,我現在已經啓用所有三個擴展。

這一切都很奇怪,因爲我在上個星期五離開工作站時打開了VS。而這個星期一上午,它試圖打開任何.sql文件時就開始掛起,即使文件是空的。