VS2019&Framework 4.7.2升级后,缺少文件Microsoft.ServiceHub.HostLib.resources.DLL

时间:2019-04-18 04:08:29

标签: c# asp.net-core model-view-controller

首先,很抱歉,如果我不按我通常在这里看到的问题那样格式化,这是我在这里的第一篇文章。

我可能需要回到历史的深处,但最初希望有一个相当简单的解决方案,但症结似乎是文件缺失,即...

Microsoft.ServiceHub.HostLib.resources.DLL

...因此,我最初发布了该问题的摘要版本。如果需要,我很乐意对此进行扩展。

我一直在将5年的6个项目的C#MVC3解决方案更新为MVC5,Net Framework 4.7.2,并混入了一些Net Core 2.2(只是使情况变得更糟),在大量NuGet更新之后,它现在又在构建

运行解决方案时(下面有更多详细信息),我得到:

引发异常

  

托管调试助手'BindingFailure'
        消息=托管调试助手'BindingFailure':'显示名称为'Microsoft.DiaSymReader.Native.amd64'的程序集无法加载到ID为2的AppDomain的'LoadFrom'绑定上下文中。失败的原因是:系统。 BadImageFormatException:无法加载文件或程序集“ Microsoft.DiaSymReader.Native.amd64”或其依赖项之一。该模块应包含程序集清单。'

负载的FUSLOGVW日志:

*** Assembly Binder Log Entry  (17/04/2019 @ 17:39:13) ***

The operation failed.
Bind result: hr = 0x80070002. The system cannot find the file specified.

Assembly manager loaded from:  C:\Windows\Microsoft.NET\Framework\v4.0.30319\clr.dll
Running under executable  C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\ServiceHub\Hosts\ServiceHub.Host.CLR.x86\ServiceHub.Host.CLR.x86.exe
--- A detailed error log follows. 

=== Pre-bind state information ===
LOG: Where-ref bind. Location = C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/ServiceHub/Hosts/ServiceHub.Host.CLR.x86/en-US/Microsoft.ServiceHub.HostLib.resources.DLL
LOG: Appbase = file:///C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/ServiceHub/Hosts/ServiceHub.Host.CLR.x86/
LOG: Initial PrivatePath = NULL
LOG: Dynamic Base = NULL
LOG: Cache Base = NULL
LOG: AppName = ServiceHub.Host.CLR.x86.exe

Calling assembly : (Unknown).

LOG: This bind starts in LoadFrom load context.
WRN: Native image will not be probed in LoadFrom context. Native image will only be probed in default load context, like with Assembly.Load().
LOG: Using application configuration file: C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\ServiceHub\Hosts\ServiceHub.Host.CLR.x86\ServiceHub.Host.CLR.x86.exe.Config
LOG: Using host configuration file: 
LOG: Using machine configuration file from C:\Windows\Microsoft.NET\Framework\v4.0.30319\config\machine.config.
LOG: Attempting download of new URL file:///C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/ServiceHub/Hosts/ServiceHub.Host.CLR.x86/en-US/Microsoft.ServiceHub.HostLib.resources.DLL.
LOG: All probing URLs attempted and failed.

老实说,我不太确定FUSLOGVW日志是否与异常消息相关,但这就是VS中断时日志所显示的内容,因此我在此基础上进行了工作,但我以前从未使用过FUSLOGVW-我在有关一个有关此问题的问题中找到了对此的参考。

背景/我尝试过的事情

这是为“任何CPU”设置的版本。

我已经尝试使用NuGet卸载和重新安装项目中的几乎所有参考,并修复我的VS2019安装,但是又回到了相同的错误。

几天来我一直在这里和其他地方寻找类似的问题,所以我很确定没有针对这个特定问题的解决方案。

查看FUSLOGVW报告中的位置,文件:

"C:/Program Files (x86)/Microsoft Visual Studio/2019/Community/Common7/ServiceHub/Hosts/ServiceHub.Host.CLR.x86/en-US/Microsoft.ServiceHub.HostLib.resources.DLL"

...不存在,应该存在的en-US文件夹也不存在,那是我尝试进行VS2019修复时希望[重新]创建它的原因。

日志中提到的.config文件:

C:\Program Files (x86)\Microsoft Visual Studio\2019\Community\Common7\ServiceHub\Hosts\ServiceHub.Host.CLR.x86\ServiceHub.Host.CLR.x86.exe.Config

...包含以下内容:

ServiceHub.Host.CLR.x86.exe.Config

<?xml version="1.0" encoding="utf-8" ?>
<configuration>
  <runtime>
    <relativeBindForResources enabled="true" />
    <assemblyBinding xmlns="urn:schemas-microsoft-com:asm.v1">
      <!--
           Add probing paths to Extension Manager and MS.VS.Settings assemblies.
           The probing paths are relative to the app base, and it is in VS\Common7 folder, 3 levels up from the service location.
      -->
      <probing privatePath="IDE;IDE\PrivateAssemblies;IDE\PublicAssemblies;"/>

      <!-- Redirect ServiceHub dependencies to VS versions -->
      <dependentAssembly>
        <assemblyIdentity name="Newtonsoft.Json" publicKeyToken="30ad4fe6b2a6aeed" culture="neutral"/>
        <bindingRedirect oldVersion="4.5.0.0-9.0.0.1" newVersion="9.0.0.1"/>
      </dependentAssembly>
    </assemblyBinding>
  </runtime>
</configuration>

我尝试抓紧的其他吸管

我尝试重新安装Newtonsoft.Json,因为它是上面.config中提到的唯一程序集,但是我现在正处于吸管阶段,真的看不到进步的方法。

有人可以建议前进的方向吗? -非常感谢您的关注。我在亚洲时间,所以在您西方人醒来时可能不会立即回应:)

0 个答案:

没有答案