Приложение .NET ищет среду выполнения в неправильном месте

#c# #.net

#c# #.net

Вопрос:

На моем ноутбуке с Windows установлен .NET SDK, и я могу запустить простую программу C # HelloWorld. .Net установлен в C:Program Filesdotnet , и у меня также есть этот параметр в моей PATH переменной.

Сейчас я пытаюсь запустить другое .NET-приложение. Оно запускается с помощью exe, но все, что я вижу, это быстро отображаемое окно cmd на экране. Следующая ошибка в моем средстве просмотра событий:

 Description: A .NET Core application failed.
Application: Cdi.FinancialCalculator.Api.exe
Path: C:workspaceDataInsightscontentdi.Calculator.Api.exe
Message: A fatal error occurred. The required library hostfxr.dll could not be found.
If this is a self-contained application, that library should exist in [C:workspaceDataInsightscontent].
If this is a framework-dependent application, install the runtime in the global location [C:Program Files (x86)dotnet] or use the DOTNET_ROOT(x86) environment variable to specify the runtime location or register the runtime location in [HKLMSOFTWAREdotnetSetupInstalledVersionsx86InstallLocation].

The .NET Core runtime can be found at:
  - https://aka.ms/dotnet-core-applaunch?missing_runtime=trueamp;arch=x86amp;rid=win10-x86
  

Это похоже на то, что это приложение ищет .СЕТЕВАЯ среда выполнения в неправильном расположении. Как мне решить эту проблему?

Обновить

Я добавил DOTNET_CORE(x86) переменную среды со значением c:Program Filesdotnet . Когда я сейчас запускаю свое приложение, я получаю эту ошибку:

 Description: A .NET Core application failed.
Application: di.Calculator.Api.exe
Path: C:WorkspaceDataInsightscontentdi.FinancialCalculator.Api.exe
Message: Failed to load the dll from [C:Program Filesdotnethostfxr3.1.3hostfxr.dll], HRESULT: 0x800700C1
The library hostfxr.dll was found, but loading it from C:Program Filesdotnethostfxr3.1.3hostfxr.dll failed
  - Installing .NET Core prerequisites might help resolve this problem.
     https://go.microsoft.com/fwlink/?linkid=798306
  

Я видел разные сообщения о том, что установка KB2533623 решила проблему для Windows 7, но я нахожусь в Windows 10, где это, похоже, не применимо. Кто-нибудь может помочь решить эту проблему?

Комментарии:

1. Известны проблемы с hostfxr.dll неправильным обнаружением в некоторых версиях Windows 10. Проверьте, есть ли у вас какие-либо доступные обновления Windows.

2. Похоже, что оно ищет среду выполнения x86. Если у вас этого нет, установите его из Microsoft

3. Просматриваю обновления. У меня установлен .NET Core SDK, который устанавливает среду выполнения для C:Program Filesdotnet

4. Существует версия x86, которая будет устанавливаться в соответствующие программные файлы x86

Ответ №1:

Я удалил DOTNET_CORE(x86) и установил 32-разрядную среду выполнения.