Visual Studio 2005でビルドされたサードパーティのDLLがあり、Visual Studio 2008でビルドされたプロジェクトで使用しています。このDLLは、VS2005CRTバージョン8.0.50727.4053に依存しています。
Windows 7では動作しますが、VistaおよびXPではLoadLibraryがサイドバイサイドエラーで失敗します。これは、イベントビューアからのものです。
「C:\MyLibrary.dll」のアクティベーションコンテキストの生成に失敗しました。依存アセンブリMicrosoft.VC80.CRT、processorArchitecture = "x86"、publicKeyToken = "1fc8b3b9a1e18e3b"、type = "win32"、version="8.0.50727.4053"が見つかりませんでした。詳細な診断にはsxstrace.exeを使用してください。
コンピュータからDLLと同じディレクトリに、をコピーしようとしましたが、LoadLibraryが失敗し、同じエラーがイベントビューアに表示さmsvcm80.dll
れmsvcp80.dll
ます。msvcr80.dll
x86_microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4053_none_d08d7da0442a985d
これはsxstrace.exeからの出力です。
=================
Begin Activation Context Generation.
Input Parameter:
Flags = 0
ProcessorArchitecture = x86
CultureFallBacks = en-US;en
ManifestPath = C:\MyDir\MyLibrary.dll
AssemblyDirectory = C:\MyDir\
Application Config File =
-----------------
INFO: Parsing Manifest File C:\MyDir\MyLibrary.dll.
INFO: Manifest Definition Identity is (null).
INFO: Reference: Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.4053"
INFO: Resolving reference Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.4053".
INFO: Resolving reference for ProcessorArchitecture x86.
INFO: Resolving reference for culture Neutral.
INFO: Applying Binding Policy.
INFO: Find publisher policy at C:\Windows\WinSxS\manifests\x86_policy.8.0.microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4016_none_5169e8e10f4ca52d.manifest
INFO: No binding policy redirect found.
INFO: Begin assembly probing.
INFO: Did not find the assembly in WinSxS.
INFO: Attempt to probe manifest at C:\Windows\assembly\GAC_32\Microsoft.VC80.CRT\8.0.50727.4053__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
INFO: Attempt to probe manifest at C:\MyDir\Microsoft.VC80.CRT.DLL.
INFO: Attempt to probe manifest at C:\MyDir\Microsoft.VC80.CRT.MANIFEST.
INFO: Attempt to probe manifest at C:\MyDir\Microsoft.VC80.CRT\Microsoft.VC80.CRT.DLL.
INFO: Attempt to probe manifest at C:\MyDir\Microsoft.VC80.CRT\Microsoft.VC80.CRT.MANIFEST.
INFO: Did not find manifest for culture Neutral.
INFO: End assembly probing.
ERROR: Cannot resolve reference Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.4053".
ERROR: Activation Context generation failed.
End Activation Context Generation.