Код ошибки 5100 при установке .NET framework как часть развертывания приложения ClickOnce через Visual Studio 2010

Внутри Visual Studio 2010 я установил приложение для целевой версии 4.NET Framework и для "Все процессоры". Поскольку некоторые из наших пользователей 64-разрядные, а другие 32-разрядные, я предполагаю, что выберете все CPU. Это правильно?

На конкретной пользовательской 32-разрядной машине Windows 7 с пакетом обновления 1 (SP1) установка фреймворка (через ClickOnce) терпит неудачу с кодом ошибки 5100, который согласно этот MSDN статья, указывает, что The user computer does not meet system requirements.

Пользовательский ПК 32-разрядный Windows 7 с пакетом обновления 1 (SP1), поэтому я задаюсь вопросом, правильно ли аргумент команды "FullX64Bootstrapper"?

Эта установка находится под контролем Microsoft как часть механизма публикации ClickOnce. Похоже, он пытается установить 64-битную инфраструктуру на 32-битную машину? Это может быть причиной ошибки 5100?

Здесь команда выписана из журнала (мой акцент):

Установка с использованием команды 'C:\Users\XXXXXX ~ 1\AppData\Local\Temp\VSD983D.tmp\DotNetFX40\dotNetFx40_Full_setup.exe' и параметров '/q/norestart/ChainingPackage FullX64Bootstrapper/lcid 1033 '

И вот полный журнал:

The following properties have been set:
 Property: [AdminUser] = true {boolean}
 Property: [InstallMode] = HomeSite {string}
 Property: [ProcessorArchitecture] = Intel {string}
 Property: [VersionNT] = 6.1.1 {version}
 Running checks for package 'Windows Installer 3.1', phase BuildList
 The following properties have been set for package 'Windows Installer 3.1':
 Running checks for command 'WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe'
 Result of running operator 'VersionGreaterThanOrEqualTo' on property 'VersionMsi' and value '3.1': true
 Result of checks for command 'WindowsInstaller3_1\WindowsInstaller-KB893803-v2-x86.exe' is 'Bypass'
 'Windows Installer 3.1' RunCheck result: No Install Needed
 Running checks for package 'Microsoft .NET Framework 4 (x86 and x64)', phase BuildList
 Reading value 'Version' of registry key 'HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full'
 Unable to read registry value
 Not setting value for property 'DotNet40Full_TargetVersion'
 The following properties have been set for package 'Microsoft .NET Framework 4 (x86 and x64)':
 Running checks for command 'DotNetFX40\dotNetFx40_Full_x86_x64.exe'
 Result of running operator 'ValueEqualTo' on property 'InstallMode' and value 'HomeSite': true
 Result of checks for command 'DotNetFX40\dotNetFx40_Full_x86_x64.exe' is 'Bypass'
 Running checks for command 'DotNetFX40\dotNetFx40_Full_setup.exe'
 Result of running operator 'ValueNotEqualTo' on property 'InstallMode' and value 'HomeSite': false
 Skipping ByPassIf because Property 'DotNet40Full_TargetVersion' was not defined
 Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
 Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.1.2': false
 Result of running operator 'ValueEqualTo' on property 'ProcessorArchitecture' and value 'IA64': false
 Result of checks for command 'DotNetFX40\dotNetFx40_Full_setup.exe' is 'Install'
 'Microsoft .NET Framework 4 (x86 and x64)' RunCheck result: Install Needed
 EULA for components 'Microsoft .NET Framework 4 (x86 and x64)' was accepted.
 Copying files to temporary directory "C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\"
 Downloading files to "C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\"
 (1/2/2013 11:09:57 AM) Downloading 'DotNetFX40\dotNetFx40_Full_setup.exe' from 'http://go.microsoft.com/fwlink/?linkid=182805' to 'C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\'
 Download completed at 1/2/2013 11:10:00 AM
 Verifying file integrity of C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\DotNetFX40\dotNetFx40_Full_setup.exe
 WinVerifyTrust returned 0
 File trusted
 Running checks for package 'Microsoft .NET Framework 4 (x86 and x64)', phase BeforePackage
 Reading value 'Version' of registry key 'HKLM\Software\Microsoft\NET Framework Setup\NDP\v4\Full'
 Unable to read registry value
 Not setting value for property 'DotNet40Full_TargetVersion'
 The following properties have been set for package 'Microsoft .NET Framework 4 (x86 and x64)':
 Running checks for command 'DotNetFX40\dotNetFx40_Full_setup.exe'
 Result of running operator 'ValueNotEqualTo' on property 'InstallMode' and value 'HomeSite': false
 Skipping ByPassIf because Property 'DotNet40Full_TargetVersion' was not defined
 Result of running operator 'ValueEqualTo' on property 'AdminUser' and value 'false': false
 Result of running operator 'VersionLessThan' on property 'VersionNT' and value '5.1.2': false
 Result of running operator 'ValueEqualTo' on property 'ProcessorArchitecture' and value 'IA64': false
 Result of checks for command 'DotNetFX40\dotNetFx40_Full_setup.exe' is 'Install'
 'Microsoft .NET Framework 4 (x86 and x64)' RunCheck result: Install Needed
 Verifying file integrity of C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\DotNetFX40\dotNetFx40_Full_setup.exe
 WinVerifyTrust returned 0
 File trusted
 Installing using command 'C:\Users\XXXXXX~1\AppData\Local\Temp\VSD983D.tmp\DotNetFX40\dotNetFx40_Full_setup.exe' and parameters ' /q /norestart /ChainingPackage FullX64Bootstrapper /lcid 1033'
 Process exited with code 5100
 Status of package 'Microsoft .NET Framework 4 (x86 and x64)' after install is 'InstallFailed'

Ответ 1

В MSDN есть короткий список кодов возврата установщика .NET:

  • 0: установка завершена успешно.
  • 1602: пользователь отменил установку.
  • 1603: во время установки произошла фатальная ошибка.
  • 1641. Для завершения установки требуется перезагрузка. Это сообщение указывает на успех.
  • 3010. Для завершения установки требуется перезагрузка. Это сообщение указывает на успех.
  • 5100. Пользовательский компьютер не отвечает требованиям системы.

Таким образом, согласно Microsoft, код возврата 5100 как-то связан с системными требованиями.

В моей системе это было связано с тем, что предыдущая (другая) установка требовала перезагрузки, и я пропустил эту перезагрузку. После перезагрузки была выполнена установка .NET Framework 4.

В другой системе это было связано с тем, что на моем жестком диске не хватило свободного места. После того, как я освободил несколько ГБ, настройка удалась.

Ответ 2

Я получил одно и то же сообщение в той же ситуации, потому что компонент Windows Imaging Component (WIC) на Windows XP не установлен (wic_x86_enu.exe). Это помогло мне.

Ответ 3

Минимальное требование .NET 4.0 - это 2-х дисковое пространство на диске для установки. Свободное место на установочном диске и его установка будут работать нормально.

Ответ 4

В настоящее время я устраняю эту проблему. У нас такая же проблема с некоторыми нашими установщиками наших клиентов.

Причина, по которой я пришел, до сих пор:

"Недостаточно свободного места на C: диске"

Это причина некоторых из 5100 ошибок, но я не нашел причину других.

Если вы введете: "net helpmsg 5100" в командной строке, выход будет "Азия". Я понятия не имею, что это значит.

Ответ 5

Это также может произойти, когда машина имеет более новую версию Visual C, чем тот, который распространяется в пакете. Сначала он должен работать, не проверяя предварительные компоненты.

Ответ 6

Эта ошибка появилась для меня, когда я пытался установить Windows SDK. Эта ошибка возникла из-за того, что более новая версия Visual С++ 2010 Redistributable была установлена ​​на моем компьютере ранее. Мне нужно было удалить как x86, так и x64 версии с моей машины, а затем установить Windows SDK. Моя проблема описана MS здесь.

Возможно, вам удастся удалить ненужные компоненты на Visual С++ 2010 машина.

Это может быть или не быть связано с вашей проблемой, но ее стоит дать ему шанс. Если кто-либо попытается это сделать, добавьте свои результаты в комментарии, чтобы другие могли узнать результаты.

Ответ 7

На этой ссылке MSDN https://msdn.microsoft.com/en-us/library/ee390831(v=vs.110).aspx он определяет местоположение журнала установщика как %temp%\Microsoft .NET Framework 4.5*.html. Я искал .NET 4.5, но ссылка "Другие версии" имеет путь к .NET 4.0.

Просмотр этого журнала дал мне подробное сообщение о том, что делать дальше. В моем случае обновление, соответствующее определенному КБ, который должен был быть установлен.

Ответ 8

Ошибка 5100 может означать, что .NET Framework 4.7 не удалось установить в Windows 10, поскольку первые две сборки Windows 10 (сборка 10240 версии 1507 и сборка 10586 версии 1511) не поддерживают .NET Framework 4.7. Они допускают только до .NET Framework 4.6.2. Единственный способ установить .NET Framework 4.7 или более поздней версии в Windows 10 - это обновить версию сборки Windows 10.

Я не знаю, почему он сообщает "Азия" как текст сообщения. Только то, что Microsoft обрабатывает сообщения об ошибках, крайне несовершенно во всех аспектах.

Ответ 9

Эта ошибка также может быть вызвана тем, что требование исправления ОС не выполнено. Попробуйте установить программу вручную (найдите установочный файл в журнале) и запустите ее вручную.