Ошибка 0x80092004 при установке.NET Framework в Windows Server 2012 R2

Столкнулся с ошибкой 0x80092004 — Cannot find object or property (Объект или свойство не найдено) при установке .NET Framework 4.7.2 с помощью онлайн и оффлайн установщиков в Windows Server 2012 R2. При этом в журнале событий фиксируется ошибка “Couldn’t find the hash of component: NetFx4-PenIMC”. Довольно долго искал решение этой проблемы. Как оказалась, проблема связана с наличием ошибки в уже установленном на сервере компоненте .Net Framework 3.5 (или в его обновлениях), из-за которой в свою очередь уже не устанавливается .NET 4.7.2. Нашлось совсем неочевидное решение, которое помогло мне, оставлю его здесь.

Для исправления ошибки 0x80092004 (CRYPT_E_NOT_FOUND) необходимо вручную скачать пакеты обновления для .NET Framework из каталога обновлений Microsoft.

  1. Перейдите в https://www.catalog.update.microsoft.com и выполните поиск обновления KB4340558;
  2. Скачайте обновление 2018-07 Security and Quality Rollup for .NET Framework 3.5, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2 for Windows 8.1 and Server 2012 R2 for x64 (KB4340558);
  3. Вам будет предложено скачать 3 MSU файла. Скачайте их все и поместите в папку c:\Distr\update:
    windows8.1-kb4338415-x64_cc34d1c48e0cc2a92f3c340ad9a0c927eb3ec2d1.msu
    windows8.1-kb4338419-x64_4d257a38e38b6b8e3d9e4763dba2ae7506b2754d.msu
    windows8.1-kb4338424-x64_e3d28f90c6b9dd7e80217b6fb0869e7b6dfe6738.msu

    ошибка 0x80092004 при установке .NET Framework в windows server 2012 r2
  4. Теперь нужно распаковать MSU файлы с помощью команды:
    expand -f:* c:\Distr\update\*.msu c:\Distr\update\extract
    установка cab файлов обновления .net framework
  5. В каталоге C:\Distr\update\extract появится несколько файлов. Нам нужны только CAB файлы. Интегрируйте CAB обновления в онлайн образ вашего Windows Server 2012 R2 с помощью DISM (если компьютер запросит перезагрузки, выполните ее):
    dism /online /add-package /packagepath:"C:\Distr\update\extract\Windows8.1-KB4338415-x64.cab"
    dism /online /add-package /packagepath:"C:\Distr\update\extract\Windows8.1-KB4338419-x64.cab"
    dism /online /add-package /packagepath:"C:\Distr\update\extract\Windows8.1-KB4338424-x64.cab"
    dism /online /add-package /packagepath:"C:\Distr\update\extract\WSUSSCAN.cab"
  6. Если при установке любого CAB пакета через DISM появляется ошибка 0x80092004 , выполните удаление этого обновления командой (например, ошибка появилась при удалении KB4338419):

    dism /online /remove-package /packagepath:"C:\Distr\update\extract\Windows8.1-KB4338419-x64.cab"

    А потом еще раз установите этот же CAB пакет командой:

    dism /online /add-package /packagepath:"C:\Distr\update\extract\Windows8.1-KB4338419-x64.cab"

    В моем случае обновление KB4338419 пришлось ставить и удалять 2 раза подряд, пока ошибка 0x80092004 не исчезла.
  7. Перезагрузите сервер и попробуйте установить .Net 4.7.2 – он должен установиться без ошибок. Вам осталось удалить файлы из каталога C:\Distr\update\.

Очевидно, что на Windows 8.1 эта проблема решается аналогично.


Предыдущая статья Следующая статья


Комментариев: 0 Оставить комментарий

Оставить комментарий

Ваш e-mail не будет опубликован. Обязательные поля помечены *

Я не робот( Обязательно отметьте)