У меня на компьютере установлена Windows 8.1. Я попытался установить Visual Express 2015, но установка прервалась при попытке установить KB2999226
обновление.
Затем я попытался установить это обновление вручную. Но там написано, что обновление не применимо к моему компьютеру.
Почему это? KB2999226
Нужно ли этому обновлению устанавливать какие-то другие обновления?
решение1
Требуется ли перед обновлением KB2999226 установить какие-либо другие обновления?
Предпосылки
Для установки этого обновления вам необходимо иметьНакопительный пакет обновлений за апрель 2014 г. для Windows RT 8.1, Windows 8.1 и Windows Server 2012 R2 (2919355) установлен в Windows 8.1 или Windows Server 2012 R2. Или установите Пакет обновления 1 для Windows 7 или Windows Server 2008 R2. Или установитеПакет обновления 2 для Windows Vista и Windows Server 2008.
ИсточникKB2999226 — Обновление для универсальной среды выполнения C в Windows
решение2
Я хотел бы дать вам общую информацию об Universal CRT, которая поможет вам понять, почему систему следует обновлять перед установкой vc_redist.x64.exe
.
Большая часть C-runtime перешла в ОС в Windows 10 ( ucrtbase.dll
) и обслуживается так же, как и любая другая DLL ОС (например kernel32.dll
). Она больше не обслуживается Visual Studio напрямую. Пакеты MSU — это тип файлов для обновлений Windows.
Для того чтобы Windows 10 Universal CRT стала доступна для более ранних версий ОС, были созданы пакеты обновления Windows, позволяющие перенести этот компонент ОС на более низкий уровень. KB2999226
переносит Windows 10 RTM Universal CRT на платформы более низкого уровня (Windows Vista — Windows 8.1). KB3118401
переносит обновление Windows 10 November Update на Universal CRT для платформ более низкого уровня.
Windows XP (последний SP) является исключением. Windows Servicing не предоставляет пакеты нижнего уровня для этой ОС, поэтому Visual Studio (Visual C++) предоставляет механизм для установки UCRT System32
через VCRedist и MSM.
Windows Universal Runtime включена в пакет VC Redist exe, поскольку она зависит от Windows Universal Runtime (
KB2999226
).Windows 10 — единственная ОС, которая поставляется с UCRT в комплекте. Все предыдущие ОС получают UCRT только через Центр обновления Windows. Это относится ко всем Vista → 8.1 и связанным с ними серверным SKU.
Для Windows 7, 8 и 8.1 Windows Universal Runtime необходимо установить через
KB2999226
. Однако для него есть предварительное обновлениеKB2919355
, которое содержит обновления, облегчающие установкуKB2999226
пакета.
Почему KB2999226 не всегда устанавливается, когда среда выполнения установлена из распространяемого пакета? Что может помешать
KB2999226
установке как части среды выполнения?MSU UCRT, включенный в VCRedist, устанавливается путем вызова службы Центра обновления Windows, и установка базы знаний может завершиться неудачей в зависимости от активности/состояния службы Центра обновления Windows:
Если машина не обновлена до требуемого базового уровня обслуживания, MSU UCRT будет считаться «неприменимым».
Убедитесь,
KB2919355
что установлено. Также были известные проблемы с,KB2919355
поэтому перед этим необходимо установить следующее исправление:KB2939087
,KB2975061
.Если служба Центра обновления Windows устанавливает другие обновления во время установки VCRedist, вы можете увидеть длительные задержки или ошибки, указывающие на то, что компьютер занят.
Эту проблему можно решить, подождав и повторив попытку позже (возможно, именно поэтому установка через пользовательский интерфейс Центра обновления Windows в более позднее время проходит успешно).
Если служба Центра обновления Windows находится в состоянии неготовности, вы можете увидеть ошибки, отражающие это.
Недавно мы расследовали сбой с кодом ошибки, указывающим на отключение службы WUSA.
Чтобы определить, установлен ли необходимый компонент
KB2919355
, есть 2 варианта:Ключ реестра:
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
или позже.