我有一个包含以下清单的程序集:
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<dependency>
<dependentAssembly>
<assemblyIdentity type="win32" name="Microsoft.VC80.CRT" version="8.0.50608.0" processorArchitecture="x86" publicKeyToken="1fc8b3b9a1e18e3b"></assemblyIdentity>
</dependentAssembly>
</dependency>
</assembly>
在我的某台机器上,这个程序集无法运行(程序集加载失败)。在依赖项查看器中打开后,出现以下错误信息:
Error: The Side-by-Side configuration information for "SomeAssembly.dll" contains errors. This application has failed to start because the application configuration is incorrect. Reinstalling the application may fix this problem (14001).
同样的程序在另一台机器上运行良好,并且使用依赖项检查工具没有出现错误。
据我所知,问题是由于第一台机器缺少某种依赖关系(例如MSVCR可再发行组件)导致的,但是我已经检查过了,Microsoft Visual C++ 2005 Redistributable 在两台机器上都已经安装好了。
我该如何找出缺失的依赖关系是什么?
唯一注意到的事情是工作正常的机器上的 WinSxS 目录有一个额外的条目:
x86_Microsoft.VC80.ATL_1fc8b3b9a1e18e3b_8.0.50727.4053_x-ww_473666fd