Visual Studio 2015崩溃


73

无法修复的Visual Studio ...
每当我想在vs 2015上编译应用程序时,它就会崩溃。即使我要编译主要功能或向其编写内容,也会出现一个窗口,其中显示

Visual Studio 2015已停止工作

2013 Express版本也是如此。我有一个提示为什么它不起作用:打开Team Explorer时,出现错误:

找不到页面'3185ed96-1cbd-4381-a439-636973542e50'。

我尝试了在互联网上找到的所有内容并信任我-没有任何效果。我还尝试了一些命令提示符命令:

devenv.exe/ debug  
devenv.exe/ resetsettings  
devenv.exe/ instalvstemplates  
devenv.exe/ resetskippings  
devenv.exe/ resetuserdata  
devenv.exe/ setup  
devenv.exe/ safemode  

调试模式为我提供了有关该错误的一些信息:

mscorlib.dll中发生了类型为'System.InvalidOperationException'的未处理异常

附加信息:Microsoft.Internal.VisualStudio.Shell.Interop.SVsUIThreadInvokerPrivate必须安装服务“ ”才能使用此功能。确保此服务可用。HRESULT = 0x80004002

构造此框架的内容时遇到异常。此信息也记录在“ C:\ Users \ admin \ AppData \ Roaming \ Microsoft \ VisualStudio \ 14.0 \ ActivityLog.xml”中。

Exception details:
System.ArgumentException: Parametr is incorrect. (Exception from HRESULT: 0x80070057 (E_INVALIDARG))
   at System.Runtime.InteropServices.Marshal.ThrowExceptionForHRInternal(Int32 errorCode, IntPtr errorInfo)
   at Microsoft.VisualStudio.Shell.Package.CreateToolWindow(Type toolWindowType, Int32 id, UInt32 flags)
   at Microsoft.VisualStudio.Shell.Package.CreateToolWindow(Type toolWindowType, Int32 id, ProvideToolWindowAttribute tool)
   at Microsoft.VisualStudio.Shell.Package.FindToolWindow(Type toolWindowType, Int32 id, Boolean create, ProvideToolWindowAttribute tool)
   at Microsoft.VisualStudio.Shell.Package.CreateToolWindow(Guid& toolWindowType, Int32 id)
   at Microsoft.VisualStudio.Shell.Package.Microsoft.VisualStudio.Shell.Interop.IVsToolWindowFactory.CreateToolWindow(Guid& toolWindowType, UInt32 id)
   at Microsoft.VisualStudio.Platform.WindowManagement.WindowFrame.ConstructContent()

但我仍然找不到任何有效的方法。

我重新安装了VS并对其进行了修复-仍然一无所获。然后,我下载了一些.dlls,Microsoft Visual C ++可再发行组件包,并使用Ccleaner清理注册表。我认为这是一个非常奇怪的错误;如果您能建议我解决问题?


这会在最小的“ hello world”应用程序上发生吗?听起来很奇怪。操作系统本身或恶意软件可能存在问题。您是否已提供全套服务和最新信息,病毒检查程序等?

您是否尝试将其报告给Microsoft?这是他们的产品。
n。代词

是的,我已经将其报告给了Microsoft,是的,我得到了全面的服务,但是我会再次检查。谢谢。
Phastasm 2015年

您是否尝试过以安全模式启动Visual Studio?msdn.microsoft.com/zh-CN/library/ms241278(v=vs.140).aspx
Bradley Uffner 2015年

1
如果您基于开关,请尝试更新设备驱动程序(英特尔高清图形)或使用图形驱动程序运行。
qwr

Answers:


83

取消选中[工具->选项->环境->根据客户表现自动调整视觉体验]

取消选中[使用硬件图形加速(如果可用)]

您可以选中[启用丰富的客户端视觉体验]

我遇到了很多问题,从随机崩溃到崩溃我的Intel Graphics显示驱动器,我都将其关闭并且没有问题,实际上它运行得更好。也许它将为您工作


这对我有用。我安装了VS2015社区版,并尝试打开iSpy32解决方案,但是一旦打开,一切都会冻结。现在工作正常。
user1634700 2015年

1
此解决方法有效。事件查看器中的错误包含:位于System.Windows.Media.Imaging.BitmapSource.GetClosestDUCEFormat(System.Windows.Media.PixelFormat,System.Windows.Media.Imaging.BitmapPalette)处的System.Windows.Media.PixelFormat.get_InternalBitsPerPixel() ...因此,很明显,这与图形表示有关。这是.net运行时异常,它总是与Visual Studio(devenv.exe)异常一起出现。确实,非常好的解决方法!
shivesh suman

工具->选项->常规->基于客户端性能自动调整视觉体验应为工具->选项->环境->
常规

提示!我的VS 2015 IDE在使用60-90分钟后会出现故障(特别是如果我多次打开和关闭它)。这解决了我的问题!
塔哈·艾哈迈德

我不认为这是解决问题的方法,这是针对特定PC的平台特定解决方法,可能存在也可能不存在。我认为这个问题对我来说仍然存在,我需要在开始工作之前每天安装vs。它像地狱。还有其他人有这个问题吗?我愿意为此提出一个新问题,以提供任何人使用的详细解决方案
Heemanshu Bhalla

19

对于团队资源管理器,我面临着同样的问题。首先关闭Visual Studio的所有实例,然后尝试:

devenv /resetuserdata

在命令提示符处运行以上命令;通常类似于“ C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE”


解决各种问题的良方。包括我的VS 2015在安装最新的SSDT之后崩溃。(为什么在MS的故障排除/安装页面上没有记录这些内容)
Don Cheadle,

5

这些类型错误的可能修复:

如果您基于开关,则尝试更新设备驱动程序(英特尔高清图形)或使用图形驱动程序运行,反之亦然。

主可执行文件位于

C:\ Program Files(x86)\ Microsoft Visual Studio 14.0 \ Common7 \ IDE \ devenv.exe

另外,如果在安装exe上遇到这些类型错误,则可以用相同的方式修复它 在此处输入图片说明


2

Visual Studio使用WPF:通过链接:“ Windows Presentation Foundation(WPF)与Windows上的先前应用程序平台的不同之处在于,它使用自己的基于DirectX的硬件加速渲染管道(如果可用)来绘制任何WPF窗口的内容。以前的应用程序平台通常不太依赖显示驱动器质量,因为它们的渲染大部分是通过软件而不是硬件完成的。” 因此,如果没有最新的显示驱动程序或最新的.NET框架,它可能会与显示驱动程序发生冲突,导致其停止。尽管可能还有其他原因。

还有一个注册表设置(regedit)可能会帮助您:通过转到[HKEY_LOCAL_MACHINE-> SYSTEM-> CurrentControlSet-> Control->,可以添加新的DWORD(对于32位系统)或QWORD(对于64位)。 GraphicsDrivers],并将名称设置为“ TdrDelay”,并将值设置为“ 8”。确保该值的基数设置为十六进制。TDR-超时检测和恢复。

如果以上任何一项都不起作用。尝试从[工具->选项]禁用Visual Studio中的任何硬件加速渲染功能。从您的ActivityLog文件中,似乎异常大多数在图形方法中。因此,我的猜测是它与图形渲染有关。


2

单击工具菜单>导入和导出设置>重置所有设置>下一步>“不,只需重置设置,覆盖所有当前设置”>下一步>完成。


0


我遇到了Visual Studio安装的问题,它在开始安装之前就停止了,我只是去控制面板>程序>打开Windows功能,或者>取消选中所有.NETframework版本并重新启动计算机,然后以这种方式开始安装和我一起工作



0

已经有一段时间了,但是从今天开始我就看到了类似的行为。每次加载解决方案时,VS2015崩溃并重新启动。Windows事件日志显示“内存不足异常”,但崩溃时有2GB以上的可用空间。故障模块是KERNELBASE.DLL

如果这可以帮助任何人:

Faulting application name: devenv.exe, version: 14.0.25420.1, time stamp: 0x57685d85
Faulting module name: KERNELBASE.dll, version: 6.1.7601.23915, time stamp: 0x59b94abb

我怀疑是Windows更新,因为我的所有同事都没有这个问题,但不幸的是,我是那个总是尽快安装更新的书呆子。


0

我找到了这篇SOF文章,并尝试了列出的所有内容。

我发现了这个伏都教徒的新警告。

地雷属于“有史以来最愚蠢的原因”类别。

我的临时文件夹为“已满”。所以我做了磁盘清理,然后删除了文件。但是,我的temp文件夹中有大量子文件夹,当它们为空时,文件夹本身导致GetTempFile函数失败。

所以当我跑

“ C:\ blah \ blah \ blah \ IDE \ devenv.exe” / log

ActivityLog.xml中的日志条目显示如下:

System.IO.IOException: The file exists.

   at System.IO.__Error.WinIOError(Int32 errorCode, String maybeFullPath)
   at System.IO.__Error.WinIOError()
   at System.IO.Path.InternalGetTempFileName(Boolean checkHost)
   at System.Windows.Input.Cursor.LoadFromStream(Stream cursorStream)
   at Microsoft.VisualStudio.Text.Editor.Implementation.LeftSelectionMargin.get_RightArrowCursor()
   at Microsoft.VisualStudio.Text.Editor.Implementation.LeftSelectionMarginProvider.CreateMargin(IWpfTextViewHost textViewHost, IWpfTextViewMargin containerMargin)
   at Microsoft.VisualStudio.Text.Utilities.ContainerMargin.<AddMargins>b__2(IWpfTextViewMarginProvider mp)
   at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.InstantiateExtension[TExtension,TMetadata,TExtensionInstance](Object errorSource, Lazy`2 provider, Func`2 getter)

在该日志条目文本中,不要错过文本“ System.IO.Path.InternalGetTempFileName”

因此,有几个地方说过“删除您的临时文件”,但是我仍然遇到相同的问题。:(

然后我看了看temp目录,发现有些奇怪。大量(空)子文件夹。

因此,一旦发现我的temp目录中有一堆子文件夹,便清理了这些子文件夹。

我发现了这个问题:

如何在Windows中的命令提示符下删除特定目录中的文件/子文件夹

所以我用了这段代码:

我将此代码放在.bat文件中

del /q "C:\Users\MYUSERNAME\AppData\Local\Temp\*"
FOR /D %%p IN ("C:\Users\MYUSERNAME\AppData\Local\Temp\*.*") DO rmdir "%%p" /s /q

现在我的Visual Studio再次正常运行。

哇,走吧


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.