启动Visual Studio 2012时出错

时间:2013-02-06 20:43:53

标签: visual-studio visual-studio-2012

每次启动Visual Studio时都会收到错误消息。由于我在项目中也看到了一些无法解释的行为,我想解决这个问题。

错误消息

  

遇到异常。这可能是由扩展引起的。

     

您可以通过检查文件'C:\ Users \ Jonathan \ AppData \ Roaming \ Microsoft \ VisualStudio \ 11.0 \ ActivityLog.xml'来获取更多信息。

当我查看日志文件时,我发现两个例外:

错误1

Exception Type       : System.Windows.Markup.XamlParseException
Exception Message    : Provide value on 'System.Windows.StaticResourceExtension' threw an exception.
Exception Stack Trace:
    at System.Windows.Markup.WpfXamlLoader.Load(XamlReader xamlReader, IXamlObjectWriterFactory writerFactory, Boolean skipJournaledProperties, Object rootObject, XamlObjectWriterSettings settings, Uri baseUri)
    at System.Windows.Markup.WpfXamlLoader.LoadBaml(XamlReader xamlReader, Boolean skipJournaledProperties, Object rootObject, XamlAccessLevel accessLevel, Uri baseUri)
    at System.Windows.Markup.XamlReader.LoadBaml(Stream stream, ParserContext parserContext, Object parent, Boolean closeStream)
    at System.Windows.Application.LoadComponent(Object component, Uri resourceLocator)
    at SquaredInfinity.VSCommands.UI.Views.DefaultAlertView.InitializeComponent()
    at SquaredInfinity.VSCommands.Foundation.Services.VSCUIService.GetDefaultAlertViewModel(String alertMessage, String alertDialogTitle)
    at SquaredInfinity.Foundation.Presentation.Services.UIService.GetDefaultAlertViewModel(String alertMessage)
    at SquaredInfinity.Foundation.Presentation.Services.UIService.ShowAlert(String message)
    at SquaredInfinity.VSCommands.VSCommandsPackage.Initialize()
Exception Data   : [EmptyOrNull]
Inner Exception:
Exception Type       : System.Exception
Exception Message    : Cannot find resource named 'VSC.Button'. Resource names are case sensitive.
Exception Stack Trace:    at System.Windows.StaticResourceExtension.ProvideValueInternal(IServiceProvider serviceProvider, Boolean allowDeferredReference)
                      at System.Windows.StaticResourceExtension.ProvideValue(IServiceProvider serviceProvider)
                      at MS.Internal.Xaml.Runtime.ClrObjectRuntime.CallProvideValue(MarkupExtension me, IServiceProvider serviceProvider)
Exception Data   : [EmptyOrNull]

错误2

System.ComponentModel.Composition.CompositionException: The composition produced a single composition error. The root cause is provided below. Review the CompositionException.Errors property for more detailed information.

1) The current type,    SquaredInfinity.Foundation.Configuration.Services.IConfigurationService, is an interface and cannot be constructed. Are you missing a type mapping?
Resulting in: Resolution of the dependency failed, type = "SquaredInfinity.Foundation.Configuration.Services.IConfigurationService", name = "(none)".
Exception occurred while: while resolving.
Exception is: InvalidOperationException - The current type, SquaredInfinity.Foundation.Configuration.Services.IConfigurationService, is an interface and cannot be constructed. Are you missing a type mapping?
-----------------------------------------------
At the time of the exception, the container was:
  Resolving SquaredInfinity.Foundation.Configuration.Services.IConfigurationService,(none)

Resulting in: An exception occurred while trying to create an instance of type '#Btb.#Rtb'.

Resulting in: Cannot activate part '#Btb.#Rtb'.
Element: #Btb.#Rtb -->  #Btb.#Rtb

Resulting in: Cannot get export '#Btb.#Rtb (ContractName="Microsoft.VisualStudio.Text.Classification.IClassifierProvider")' from part '#Btb.#Rtb'.
Element: #Btb.#Rtb (ContractName="Microsoft.VisualStudio.Text.Classification.IClassifierProvider") -->  #Btb.#Rtb

   at System.ComponentModel.Composition.Hosting.CompositionServices.GetExportedValueFromComposedPart(ImportEngine engine, ComposablePart part, ExportDefinition definition)
   at System.ComponentModel.Composition.Hosting.CatalogExportProvider.GetExportedValue(CatalogPart part, ExportDefinition export, Boolean isSharedPart)
   at System.ComponentModel.Composition.Hosting.CatalogExportProvider.CatalogExport.GetExportedValueCore()
   at System.ComponentModel.Composition.Primitives.Export.get_Value()
   at System.ComponentModel.Composition.ExportServices.GetCastedExportedValue[T](Export export)
   at System.ComponentModel.Composition.ExportServices.<>c__DisplayClass4`2.<CreateStronglyTypedLazyOfTM>b__1()
   at System.Lazy`1.CreateValue()
   at System.Lazy`1.LazyInitValue()
   at System.Lazy`1.get_Value()
   at Microsoft.VisualStudio.Text.Utilities.GuardedOperations.InvokeMatchingFactories[TExtensionInstance,TExtensionFactory,TMetadataView](IEnumerable`1 lazyFactories, Func`2 getter, IContentType dataContentType, Object errorSource)

我如何解释这个以便我能找出错误?

8 个答案:

答案 0 :(得分:21)

VSCommands扩展或其他插件似乎有问题。您可以尝试禁用所有扩展,重新启动Visual Studio并重新启用它们;有时它解决了这个问题。

您可以尝试的另一件事是以管理员身份运行Visual Studio,因为如果没有足够的权限来访问某些资源,则会发生此错误(这是旧版Visual Studio中的错误)。

您最后的痛苦度假胜地将是一次干净的重新安装。

答案 1 :(得分:13)

只需重新安装最新的Web Essentials 5/5/2013。它解决了这个问题。无需卸载或禁用任何内容,只需再次运行安装程序即可完成。

http://visualstudiogallery.msdn.microsoft.com/07d54d12-7133-4e15-becb-6f451ea3bea6

答案 2 :(得分:9)

通过删除以下文件夹修复:

  

C:\用户{用户名} \应用程序数据\本地\微软\ {VisualStudio的版本数} \ ComponentModelCache

答案 3 :(得分:4)

安装Visual Studio 2012 Update 2后会出现此错误。显然,Web Tools和Web Essentials 2012扩展存在冲突 - 它们都尝试注册一些相同的组件,从而生成此异常。

此外,安装VS 2012 Update 2时,似乎会破坏其中一个或两个扩展的自动更新通知,因为虽然已更新扩展以解决冲突,但不会通知您存在更新。

解决方案是删除两个扩展,然后重新安装。

有关此内容的详情,请参阅http://madskristensen.net/post/web-tools-20122-and-web-essentials

答案 4 :(得分:3)

我得到同样的错误。我注意到NuGet Package Manager扩展有一个更新。安装此更新后,错误消失了。

确保应用所有可用更新。要检查是否有可用的更新,请打开工具&gt;扩展和更新。在“扩展和更新”对话框中,展开左窗格中的“更新”节点。安装可用的任何更新并重新启动Visual Studio 2012。

答案 5 :(得分:2)

对于遇到此问题的所有人:

  1. 打开Visual Studio 2012,但不加载任何解决方案/项目
  2. 工具菜单中打开扩展程序和更新
  3. 禁用Web Essentials 2012
  4. 删除解决方案的.suo文件
  5. 在Visual Studio中打开解决方案
  6. 看到它加载并且Visual Studio不会崩溃
  7. 启用Web Essentials 2012
  8. 重新启动Visual Studio 2012并重新加载解决方案。
  9. 快乐时光!
  10. Source

答案 6 :(得分:2)

解决上述问题所需的只是删除项目和Visual Studio的* .suo文件。我有同样的问题。

答案 7 :(得分:0)

我也遇到了同样的错误:

  

遇到异常。这可能是由扩展引起的。

     

您可以通过检查文件'C:\ Users \来获取更多信息。 。 。   \ VisualStudio的\ 11.0 \ ActivityLog.xml'

原因:

我从控制面板中卸载了一些SQL文件。只有在那之后我才开始出现这个错误,但我不确定我卸载了哪个服务。

解决方案:

我下载了SDK for Visual Studio 2012并安装/重新启动了Visual Studio,然后它运行正常。