打开解决方案时,Visual Studio 2013挂起


106

我安装了VS2013(v12.0.21005.1),并在一两天前添加了ReSharper 8(v8.0.2000.2660)。那天很好。现在,我很幸运能在一天之内打开一个解决方案。它本身可以打开OK,但是当我尝试从内部(通过菜单)打开解决方案时,它会严重挂起。如果我在Windows资源管理器中右键单击一个解决方案并“使用VS 2013打开”,则该解决方案将以完全相同的方式打开然后挂起。时不时地,几个小时后,我有点注意到它忙于某些事情。

在我忍受无法解决问题的重新安装之前,有人知道出什么问题了吗?


2
您是否尝试过删除ReSharpher以防发生冲突?
安德鲁

使用VS2012打开时会发生什么?解决方案包含多少种项目类型/语言?
RoelF

@ Roel,VS2012完美运行。我总共有大约20个WPF应用程序和类库,所有这些都在c#和xaml中。
ProfK

您对此有进一步的了解吗?我在工作站(办公室)上遇到类似的问题。在同一情况下,我在Core i7笔记本上的私人副本可以正常工作:在主要由本机c ++项目组成的大型解决方案上运行构建……
Paul Michalik 2014年

Answers:


243

有时仅删除“ .v12.suo”文件并尝试再次打开解决方案就足够了。当VS2013在加载项目时冻结时,对我有很多帮助。


19
删除.v12.suo文件似乎对我有用。谢谢。
ysrb

4
...即使我对此感到厌倦,VS在打开一个项目时每3-4次冻结一次……
Alex

5
我也发生了同样的事情,令人惊讶的是VS变得多么马车。
弗里特霍夫·伯格格伦

4
帮助了我,但是现在每次打开解决方案时,我都必须删除.v12.suo。显然,解决方案中的一个项目或其软件包存在一些问题,但这令人沮丧。任何人都对如何进行更多调查有任何想法?
pomarc

5
删除.suo文件确实可以加载它。但是我不必每次删除它。在我的一种解决方案中,我实际上必须每次都删除.suo文件。
John Rocha 2015年

43

删除所有“ .suo”文件对我来说都是有效的。由于在多个版本的Visual Studio中打开解决方案,因此存在多个副本。

编辑:

可能的路径可能是:

PathToSolution \ .vs \ ProjectName \ v14 \

.vs可能是隐藏的文件夹。

.suo是文件名。


3
为路径+1 ..😊
古鲁普拉萨德饶

谢谢。在隐藏文件夹中删除此文件可解决问题
yurart

33

基本上可以是任何东西,但是您可以尝试一些操作:

  1. 将其关闭然后再次打开。
  2. 清除ReSharper缓存,它在中%LOCALAPPDATA%\JetBrains\ReSharper\<CurrentVersion>\SolutionCaches,您应该在其中找到一个与尝试打开的解决方案匹配的文件夹。只需关闭VS2013的所有实例,删除文件夹,然后重试。
  3. 关闭ReSharper: Tools > Options > ReSharper > General > Suspend
  4. 完全卸载ReSharper,然后查看问题是否仍然存在。
  5. 通过修复Visual Studio Programs and Features

哈哈,几天后一直将其关闭。甚至整个机器。哇,该解决方案缓存非常丰富。
ProfK

2
为我工作,经过了步骤2。使用Resharper 8.1%LOCALAPPDATA%\ JetBrains \ ReSharper \ v8.1 \ SolutionCaches,路径现在略有不同
KevM 2014年

卸载与重新安装ReSharper似乎对我有用!
蒂姆(Tim)

3
从ReSharper版本9开始,缓存文件夹的路径似乎为 %LOCALAPPDATA%\JetBrains\Transient\ReSharperPlatformVs12
阿斯比约恩Ulsberg

谢谢。当我使用选项3时,解决方案可以正确打开,因此问题确实存在于ReSharper。加载解决方案后再次打开它无效,步骤1和2也无效。现在,我已经卸载了ReSharper(v7.1。*)并安装了最新版本(9.2。*)试用版,现在一切正常。Visual Studio不再冻结。现在,我只需要联系我的主管即可获得ReSharper 9许可证。
凯文·克鲁伊森

10

我发现以下是基于MS Connect指令调试VS的更好方法

请帮助确认您捕获的转储文件是否为32位转储文件。如果它是64位转储文件,请使用以下步骤捕获新的转储文件。

  1. 启动Visual Studio。
  2. 启动另一个VS实例。
  3. 在第二个实例中,单击工具|。附加到流程...
  4. 在进程列表中找到devenv.exe。
  5. 单击选择...,然后显式选择“本地”和“托管”代码。
  6. 单击确定,然后单击确定以关闭选择对话框和附加到进程对话框。
  7. 返回到VS的第一个实例并重新执行挂起。
  8. 挂起后,控制权应转到VS的第二个实例。如果不是,请手动返回到VS的第二个实例,然后单击“全部破坏”。
  9. 在第二个实例中,单击Debug |。将转储另存为带有堆的Minidump。

如果您正在运行VB配置文件,则不会看到“另存为”菜单项。要添加此菜单项:

  1. 选择工具->自定义
  2. 选择命令选项卡
  3. 从菜单栏下拉菜单中选择调试
  4. 单击添加命令...
  5. 从类别列表中选择调试。
  6. 在“命令”窗口中找到“转储另存为”条目。
  7. 单击“确定”(“转储另存为...”命令添加到“调试”菜单的顶部)。
  8. 点击关闭

您可以在http://blogs.msdn.com/debugger/archive/2009/12/30/what-is-a-dump-and-how-do-中获取有关如何获取转储文件和调用堆栈的详细步骤。我创建一个.aspx

-如果你发现问题是ReSharper的加载项可以然后通过报告问题http://youtrack.jetbrains.com/issues/RSRP


那对我有用。就我而言,我有一个构建目标指向一个不存在的文件-调试让我知道发生了什么。
2015年

我的.dmp文件为708 mb ...为什么这么大?这正常吗?
詹姆斯·维尔兹巴

@JamesWierzba,不幸的是,我已经看到了大的转储文件。如果您打开了共享工具,则它通常会使用500-800MB,因此VS可能还会包含加载项+一些项目代码详细信息,以帮助他们解决问题。如果您正在运行re-sharper,则可以打开该产品的内存使用量,观看大型项目是一个很有趣的价值。
Jamie Clayton

9.在VS中打开转储文件。10.确保加载所需的调试符号(进行搜索)。11.从转储文件窗口右上方的“操作/调试方式为...”运行转储。 。就个人而言,我很难找到问题,但我同意这可能是解决问题的最佳方法。
SteveCinq'2

7

暂停Resharper为我工作。去

工具->选项-> ReSharper->常规->立即挂起

现在,您的解决方案将非常快速地加载。解决方案完全加载后,可以将Resharper设置更改为Resume Now


7

您在项目中使用任何节点模块吗?还是可以确定这是ReSharper的特定问题?

如果您有NPM模块(例如,对于Grunt),则将“ node_modules”文件夹标记为“ hidden”(尽管无需隐藏子文件夹),然后重试。

Visual Studio对我来说一直处于打开状态,原来它正在尝试扫描文件路径长于Windows最大值(260个字符)的深层嵌套节点模块,这使我无法在VS中打开解决方案,但将该文件夹标记为隐藏解决了问题。


3

我最近也遇到了这个问题,发现在加载项目时断开计算机与Internet的连接可以解决此问题。这样,我设法将加载时间从几个小时减少到几秒钟。由于无法特别方便地访问网络电缆,因此只需在加载项目之前(在控制面板中)禁用网络适配器。

但是,这很快变得令人沮丧,并且我最近再次调查了这个问题。似乎在Visual Studio中登录到我的Microsoft帐户最终解决了该问题,现在我在加载项目时没有更多问题了。

这也可能对您有用(如果您尚未解决-但由于此处没有公认的答案,因此我认为问题仍然存在),因此我建议您至少尝试断开与Internet的连接,即使您宁愿不输入Microsoft凭据。


3

我进入%LOCALAPPDATA%\ JetBrains \ ReSharper \,打开了所有目录以查找SolutionCache,然后清空了所有目录。问题解决了。该应用程序很大,因此很有帮助。


这就是我所要解决的问题-我的每次卡住似乎都是随机的,不同的程序集的“处理程序集”。我在该文件夹中搜索“ SolutionCaches”,并删除了每个结果的内容。似乎现在已解决。
艾萨克·莱曼

2

检查Windows更新

我也有这个问题。此外,我无法打开Windows防火墙设置(试图阻止VS的互联网连接)。

打开更新设置(Windows 8)时,我看到有一个待处理的更新(“今天找到”),所以我重新启动了计算机,让Windows更新。之后,VS和防火墙再次正常工作。

检查您的硬件

我第二次遇到这个问题。甚至Windows 8的更新页面也将永远加载。我的(非OS)硬盘驱动器有问题:https : //superuser.com/questions/756261/various-parts-of-windows-8-and-visual-studio-2013-get-blocked-by-可能是通讯?noredirect = 1#comment978074_756261


2

我一次又一次遇到此问题-VS 2013 Update 2,Win 8.1,IE 11。

尝试以下操作-打开任务管理器,挂起VS应用程序,然后关闭“后台进程”列表中正在运行的所有IE会话-可能有一个或多个挂起。

重启VS

似乎为我清除了它,无需重新启动。


2

我遇到的问题是Perforce连接。

打开解决方案时,它会询问我是否要它连接到Perforce。允许它尝试将使其挂起并分配1.5 GB的RAM。

不允许P4连接,使其正确加载(分配1 GB RAM)。然后我可以告诉它以后连接到P4,现在可以了。


2

对我而言,无论是因停电而崩溃还是有时在半夜强制重启时崩溃。对我有什么作用

删除此目录中的所有文件:

C:\Users\yourusername\AppData\Local\Microsoft\WebsiteCache\


1
同样的情况:断电,完全崩溃,Windows重新启动,我可以加载sln,但是csproj文件中的所有设置都将被忽略。到目前为止,删除了suo和上面提到的fodler(这是fuuuL :-)),一切似乎都还不错。
Xan-Kun Clark-Davis


1

当我检查由VS.Net 2012创建的解决方案文件时,我遇到了类似的问题。为解决此问题,我创建了虚拟解决方案文件,并从vs.net 2012重新加载了项目。

当重新加载解决方案时,当nuget软件包更新被搞砸时,也会观察到Visual Studio可能挂起。

当加载nuget包出现问题时,Visual Studio可能会挂起。


1

就我而言,由于许可证不再有效,即使没有打开解决方案,VS 2013 Professional 也会在每次启动时挂起。

日志文件中的最后一项:

<entry>
    <record>367</record>
    <time>2015/07/13 20:11:05.051</time>
    <type>Information</type>
    <source>UserConnection</source>
    <description>myemailaddrs@gmail.com signed in for IDE user</description>
</entry>

在msdn.microsoft.com订阅页面上:“您的订阅不再有效,请与管理员联系。”

我必须从雇主那里获得最新的订阅。


1

实际上,从我的TestResults文件夹中删除测试结果对我有用。尝试另一件事。


1

VS2012挂在我身上,例如,在网络共享(实际上是在VirtualBox主机上的共享上,使用VirtualBox功能作为smb共享连接)上打开csproj文件时。

将项目复制到本地驱动器为我修复了它。不知道分配驱动器号是否可以解决问题。

也不确定为什么它不能通过网络共享工作,如果是VS限制或某些插件(我当然使用了resharper)。


1

对我来说,这似乎与具有MVC 4项目类型guid(E3E379DF-F4C6-4180-9B81-6769533ABE47)的项目有关。从.csproj解决方案中删除此GUID 对我来说是一个难题。(.vs删除GUID后,还需要擦除该文件夹。)



1

很抱歉不得不创建一个新帖子,而不是对所选答案发表评论。.我目前没有足够评论来发表评论。

我的问题已通过“ ...删除.suo文件...”解决方案暂时解决,正如其他人指出的那样,我不得不每次都删除该文件。

由于(显然)无法停止文件的创建,因此我开始对文件的功能进行更多的研究。除了保存用户设置外,我相信它还可以保存会话设置,例如在VS关闭时打开的文件。我怀疑我的项目正在尝试打开一个不再存在的文件,这就是导致挂起的原因。解决问题的最终方法是删除.suo,打开VS,在解决方案中打开文件,构建并关闭解决方案。完成此操作后,我没有挂死。

tl:dr

就我而言,用户设置文件(.suo)试图在我的解决方案中打开一个不再存在的文件。我通过执行以下步骤解决了该问题。

  1. 删除.suo文件(对我来说,这在/[projectfolder]/.vs/[projectname]/v14中
  2. 打开Visual Studio
  3. 打开你的项目
  4. 打开一个文件(我只是打开一个随机的.cs文件)
  5. 构建并保存您的解决方案(简单地保存可能会成功,我是习惯养成的)
  6. 关闭Visual Studio

希望这对某人有帮助...我们在这个问题上花了太多时间:)


0

尝试使用“控制面板”卸载扩展,或在[工具] => [插件管理器]中禁用任何插件,然后尝试重新打开解决方案。

我的问题通过卸载“ Visual Localizer”得以解决。


0

就我而言,融合日志已启用。日志文件已经增长了几个月,因为我在调查后忘记将其关闭。这样,防病毒软件就可以在打开解决方案期间多次检查这些大日志文件,并且很长一段时间都显示“正在准备解决方案...”消息。当我注意到这一点时,我关闭了融合日志,问题得以解决。解决方案将在10秒而不是20分钟内加载。


0

在几乎所有版本的VS中,我都多次遇到此问题。在大多数情况下似乎有效的一种解决方案是删除解决方案文件夹中的.vs文件夹。有时足以删除.vs ///中的.sou文件

顺便说一下,该文件夹是隐藏的,因此您必须启用“显示隐藏的文件和文件夹”


0

对我而言,解决方案是禁用源代码控制(在“工具”->“源计数”中将插件设置为“无”)。我认为它出于某种原因试图同步一些巨大的Git存储库(有几个巨大的存储库,但不在我试图打开的树中)。


0

这里和其他地方有很多建议,但对我来说永久起作用的唯一事情是与我设定的启动项目有关。这就是我所做的:

  1. 按照其他地方的建议删除.suo文件。
  2. 启动VS并打开解决方案。此时一切都应该很好。
  3. 即使不是您想要的项目,也请按原样保留启动项目。
  4. 保存解决方案。(可能按照其他人的建议进行操作,然后打开文件,清理,构建/重新构建等,但我无需执行任何操作。)
  5. 关闭解决方案并退出VS。
  6. 重新启动VS并打开解决方案。
  7. 将启动项目更改为应有的项目
  8. 保存解决方案。(可能再次执行打开文件,清理,构建/重新构建等)。
  9. 关闭解决方案并退出VS。
  10. 重新启动VS并重新打开解决方案,一切都应该很好。

这可能对您不起作用,但我已尝试了所有可能的方法-注册表更改,从第二个VS会话调试VS,您为它命名-但没有其他工作可用于一次启动/打开。



-1

我还原了.vbproj文件的先前版本,并解决了该问题。

我不知道较新的版本是什么,但问题是.bvproj文件本身内部存在问题。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.