Visual Studio 2012 在 Windows 7 上安装失败

Visual Studio 2012 在 Windows 7 上安装失败

我正在尝试在 Windows 7 Home Premium 64 位计算机上安装 Visual Studio 2012,但安装失败。我尝试安装所有版本(Premium、Ultimate 等),但出现以下错误。

该机器未加入域,我以管理员用户身份登录。我之前使用 Security Essentials,但在安装前将其关闭。安装源来自 MSDN。

在此处输入图片描述

错误日志太大,无法上传,但以下是日志中的重要部分:

[1350:2188] [2012-10-07T18:24:13]:MUX:错误:'System.Windows.Media.FontFamily'的类型初始化程序引发了异常。 [1350:2188] [2012-10-07T18:24:13]:MUX:堆栈:位于 System.Windows.Media.Typeface..ctor(FontFamily fontFamily、FontStyle 样式、FontWeight 权重、FontStretch 拉伸)位于 MS.Internal.Text.DynamicPropertyReader.GetTypeface(DependencyObject 元素)位于 MS.Internal.Text.TextProperties.InitCommon(DependencyObject 目标)位于 MS.Internal.Text.TextProperties..ctor
(FrameworkElement 目标,布尔值 isTypographyDefaultValue)位于 System.Windows.Controls.TextBlock.GetLineProperties() 位于 System.Windows.Controls.TextBlock.EnsureTextBlockCache() 位于 System.Windows.Controls.TextBlock.MeasureOverride(Size 约束)
位于 System.Windows.FrameworkElement.MeasureCore(Size availableSize)
位于System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.StackPanel.MeasureOverride(Size constrain)
在 System.Windows.FrameworkElement.MeasureCore(Size availableSize)
在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Grid.MeasureCell(Int32 cell, Boolean forceInfinityV) 在 System.Windows.Controls.Grid.MeasureCellsGroup(Int32 cellsHead, Size referenceSize, Boolean ignoreDesiredSizeU, Boolean forceInfinityV)
在 System.Windows.Controls.Grid.MeasureOverride(Size constrain) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Border.MeasureOverride(Size constrain) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Grid.MeasureOverride(Size 约束) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Border.MeasureOverride(Size 约束) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 System.Windows.Controls.Grid.MeasureOverride(Size 约束) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在 MS.Internal.Helper.MeasureElementWithSingleChild(UIElement element, Size 约束) 在 System.Windows.Controls.ContentPresenter.MeasureOverride(Size 约束) 在 System.Windows.FrameworkElement.MeasureCore(Size availableSize) 在 System.Windows.UIElement.Measure(Size availableSize) 在System.Windows.Controls.Decorator.MeasureOverride(大小约束)
在 System.Windows.Documents.AdornerDecorator.MeasureOverride(大小约束)在 System.Windows.FrameworkElement.MeasureCore(大小可用大小)在 System.Windows.UIElement.Measure(大小可用大小)在 System.Windows.Controls.Border.MeasureOverride(大小约束)在 System.Windows.FrameworkElement.MeasureCore(大小可用大小)在 System.Windows.UIElement.Measure(大小可用大小)在 System.Windows.Window.MeasureOverrideHelper(大小约束)在 System.Windows.Window.MeasureOverride(大小可用大小)在 System.Windows.FrameworkElement.MeasureCore(大小可用大小)在 System.Windows.UIElement.Measure(大小可用大小)在 System.Windows.Interop.HwndSource.SetLayoutSize() 在 System.Windows.Interop.HwndSource.set_RootVisualInternal(视觉值)在 System.Windows.Interop.HwndSource.set_RootVisual(视觉值)
在System.Windows.Window.SetRootVisual() 在 System.Windows.Window.SetupInitialState(Double requestedTop, Double requestedLeft, Double requestedWidth, Double requestedHeight) 在 System.Windows.Window.CreateSourceWindowImpl() 在 System.Windows.Window.SafeCreateWindow() 在 System.Windows.Window.ShowHelper(Object booleanBox) 在 System.Windows.Window.Show() 在 Microsoft.Devdiv.Bootstrapper.ManagedUx.RunUI(ViewModelCommonUi viewModel) 在 Microsoft.Devdiv.Bootstrapper.ManagedUx.InternalRun() 在 Microsoft.Devdiv.Bootstrapper.ManagedUx.Run() 在 System.Threading.ThreadHelper.ThreadStart_Context(Object state) 在 System.Threading.ExecutionContext.Run(ExecutionContext executiveContext, ContextCallback callback, Object state) 在 System.Threading.ThreadHelper.ThreadStart()

答案1

字体可能已损坏。尝试以下 3 种方法来修复此问题

如何修复 Windows 7 中的损坏字体

答案2

它似乎需要 VS 2010 的一些组件,所以我先安装了 VS 2010,然后安装了 VS 2012,并且成功了。

此后我卸载了 VS 2010。

这看起来很奇怪,但这只对我有用。

相关内容