我看过很多类似的问题,但我不认为我在复制。这是我的情况。我有三个与我合作的解决方案。 A工作正常,但是当我尝试加载B或C时,VS 2010在加载解决方案后不久就崩溃了,特别是在我尝试从我的解决方案资源管理器中打开文件之后。
我尝试了什么:
禁用所有加载项和宏工具 - >选项 - >加载项/宏安全性然后取消选中两个相关的复选框
删除我的.suo文件。
重新启动我的机器
以管理员身份运行VS 2010
以下是我的活动查看器的错误
错误应用程序名称:devenv.exe, 版本:10.0.30319.1,时间戳: 0x4ba1fab3错误模块名称: cslangsvc.dll,版本:10.0.30319.1, 时间戳:0x4ba20c61异常代码: 0xc0000005故障偏移:0x0024b651 错误进程id:0x1408错误 申请开始时间: 0x01cbddd78972584a错误 应用程序路径:c:\ Program Files (x86)\ Microsoft Visual Studio 10.0 \ Common7 \ IDE \ devenv.exe错误模块路径:c:\ Program Files (x86)\ Microsoft Visual Studio 10.0 \ VC#\ VCSPackages \ cslangsvc.dll报告ID: cd32c352-49ca-11e0-b3d8-0026b9c2aa7e
修改
这是一个包含两个项目的解决方案 - >一个win表单项目和一个控制台项目。两者都在C#
解决
事实证明我的解决方案中有一些愚蠢的(愚蠢的?)代码让VS变得疯狂。代码永远不应该在那里;这只是我写的东西,没有充分的理由。
在一个相关的说明中,如果你想对你不喜欢的人生气,可以在他们的解决方案中插入以下代码,然后坐下来看看有趣的事情:
namespace System {
public partial class Boolean { }
}
我将此代码放入第一个解决方案,并在构建后观看它崩溃。我屁股 - 我的刚编写的代码未经处理,并继续将其放入我的第二个解决方案中,看看是否可以在没有扩展方法的情况下扩展布尔值然后生气,VS还在崩溃。那段代码可能会崩溃VS从来没有想到过。
答案 0 :(得分:14)
尝试通过工具停用所有扩展程序 - >推广经理。我在某些项目中只有视频工作室的扩展名崩溃了。
或者尝试在safemode中运行VS:devenv.exe / SafeMode
答案 1 :(得分:5)
我按照我执行的顺序尝试了以下内容:
devenv.exe / resetsettings,devenv.exe / resetskippkgs(无效)
devenv.exe / safemode(告诉我产品版本无法打开.ccproj类型。但没有反制解决方案有效)
重命名.user,.suo文件(无效)
安装VS2010的所有服务包,即使它们与C#开发有很大关系。
使用“修复/重新安装”选项“重新安装”VS2010(无效)
卸载VS2010然后安装(这是我的解决方案,即使他们中的很多人尝试了这个并且失败了。可能因为这是我的最后手段。)
答案 2 :(得分:2)
如果它是一个C ++项目,请尝试删除任何闲置的PDB文件 - 这些文件有时会被破坏并导致崩溃。
答案 3 :(得分:2)
我遇到了类似的问题,VS2010在加载特定解决方案时崩溃了。 事实证明,代码中的一行不完整导致VS2010无法正常运行。当我评论这条线时,一切都还好。
有问题的一行是:
getCommonResourcesDirectory([out, retval] BSTR* );
答案 4 :(得分:1)
如果/当测试工具(测试视图窗口等)加载在初始化期间抛出异常的DLL时,在解决方案加载期间,Visual Studio 2010中也可能发生崩溃。
我的具体案例是一个C ++ / CLI测试项目,其中一个全局变量在构造期间抛出异常,该构造函数在DLL INIT期间被调用。 (由于传递给它的无效模式字符串,这是std :: tr1 :: regex类构造函数抛出。)
这是一个非常微妙的问题,因为在执行测试之前,您不希望代码运行;但是在C ++全局变量的情况下,它在构建和解决方案加载后立即由IDE运行。
我怀疑Visual Studio 2010测试管理器组件没有在可能的try / catch块中包装Dll加载调用。
答案 5 :(得分:0)
设置将Visual Studio作为要加载的主窗体崩溃的表单。然后从DEBUG菜单中的debug mod中启动表单。
答案 6 :(得分:0)
我意识到这是一篇很老的帖子,但是当我处理同样的问题时,我想出了另一个解决方案。就我而言,VS试图使用CSharp表单编辑器而不是CSharp编辑器打开源代码文件。
当发生这种情况时,代码开始运行(我看到了我的启动画面)但是发生了错误(我看到了关于找不到某些硬件的错误消息)并且导致错误关闭VS.尝试重新打开该项目会让VS再次打开* .cs文件,从而造成令人沮丧的崩溃循环。
删除* .suo文件后,我能够打开项目。然后在解决方案资源管理器中,我右键单击代码文件并选择打开方式。在对话框中,我更改了默认设置,一切都很好,包括看到我之前没有找到的硬件。