我的电脑上安装了 Windows 8.1。我尝试在其上安装 Visual Express 2015,但当尝试安装KB2999226
更新时安装被中止。
然后我尝试手动安装该更新。但它说该更新不适用于我的电脑。
这是为什么?该KB2999226
更新是否需要事先安装任何其他更新?
答案1
KB2999226 更新是否需要事先安装任何其他更新?
先决条件
要安装此更新,您必须拥有2014 年 4 月 Windows RT 8.1、Windows 8.1 和 Windows Server 2012 R2 更新汇总 (2919355) 安装在 Windows 8.1 或 Windows Server 2012 R2 中。或者,安装 Windows 7 或 Windows Server 2008 R2 的 Service Pack 1。或者,安装Windows Vista 和 Windows Server 2008 的 Service Pack 2。
答案2
我想向您介绍通用 CRT 的背景,这将有助于您理解为什么要在安装之前更新系统vc_redist.x64.exe
。
C 运行时的很大一部分已移至 Windows 10 中的操作系统(ucrtbase.dll
),并像任何其他操作系统 DLL(例如kernel32.dll
)一样提供服务。它不再由 Visual Studio 直接提供服务。MSU 包是 Windows 更新的文件类型。
为了让早期操作系统能够使用 Windows 10 通用 CRT,创建了 Windows 更新包以将此操作系统组件降至低级。KB2999226
将 Windows 10 RTM 通用 CRT 降至低级平台(Windows Vista 至 Windows 8.1)。KB3118401
将 Windows 10 十一月更新的通用 CRT 降至低级平台。
System32
Windows XP(最新 SP)是个例外。Windows Servicing 不为该操作系统提供下级包,因此 Visual Studio(Visual C++)提供了一种通过 VCRedist 和 MSM安装 UCRT 的机制。
Windows 通用运行时包含在 VC Redist exe 包中,因为它依赖于 Windows 通用运行时(
KB2999226
)。Windows 10 是唯一随附 UCRT 的操作系统。所有之前的操作系统仅通过 Windows 更新获取 UCRT。这适用于所有 Vista → 8.1 和相关的服务器 SKU。
对于 Windows 7、8 和 8.1,必须通过 安装 Windows Universal Runtime
KB2999226
。但是,它有一个先决条件更新KB2919355
,其中包含有助于安装KB2999226
包的更新。
为什么从可再发行组件安装运行时时 KB2999226 并不总是安装?什么原因会阻止其
KB2999226
作为运行时的一部分进行安装?VCRedist 中包含的 UCRT MSU 是通过调用 Windows 更新服务来安装的,并且根据 Windows 更新服务的活动/状态,KB 可能会安装失败:
如果机器尚未更新到所需的维修基准,则 UCRT MSU 将被视为“不适用”。
确保
KB2919355
已安装。此外,存在已知问题,KB2919355
因此在此之前应安装以下修补程序:KB2939087
,KB2975061
。如果在 VCRedist 安装时 Windows Update 服务正在安装其他更新,您可能会看到长时间的延迟或错误,表明机器正忙。
可以通过等待并稍后重试来解决此问题(这可能是稍后通过 Windows 更新 UI 安装成功的原因)。
如果 Windows 更新服务处于未就绪状态,您会看到反映该情况的错误。
我们最近调查了一个故障,错误代码表明 WUSA 服务正在关闭。
要确定是否安装了先决条件,
KB2919355
有两个选项:注册表项:
64 位配置单元
HKLM\SOFTWARE\Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Package_for_KB2919355~31bf3856ad364e35~amd64~~6.3.1.14 CurrentState = 112
32位蜂巢
HKLM\SOFTWARE\[WOW6432Node\]Microsoft\Windows\CurrentVersion\Component Based Servicing\Packages\Package_for_KB2919355~31bf3856ad364e35~x86~~6.3.1.14 CurrentState = 112
或者检查文件版本:
C:\Windows\SysWOW64\wuaueng.dll C:\Windows\System32\wuaueng.dll
7.9.9600.17031
或更高版本。