2

我有一个程序拒绝在某些 Windows 7 机器上运行。使用sxstrace,可执行文件声称需要 Microsoft.VC80.CRT/MFC 版本 8.0.50727.6195 和 8.0.50608.0。见下文。

> INFO: Parsing Manifest File C:\Program Files
> (x86)\PFPS\falcon\fvw.exe.   INFO: Manifest Definition Identity is
> (null).   INFO: Reference:
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195"
> INFO: Reference:
> Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195"
> INFO: Reference:
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0"
> INFO: Reference:
> Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50608.0"
> INFO: Resolving reference
> Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195".
> INFO: Resolving reference for ProcessorArchitecture WOW64.
>     INFO: Resolving reference for culture Neutral.
>       INFO: Applying Binding Policy.
>         INFO: No publisher policy found.
>         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.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
>         INFO: Did not find manifest for culture Neutral.
>       INFO: End assembly probing.   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.4940_none_516d712b0f495a45.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.6195__1fc8b3b9a1e18e3b\Microsoft.VC80.CRT.DLL.
>         INFO: Attempt to probe manifest at C:\Program Files (x86)\PFPS\falcon\Microsoft.VC80.CRT.DLL.
>         INFO: Attempt to probe manifest at C:\Program Files (x86)\PFPS\falcon\Microsoft.VC80.CRT.MANIFEST.
>         INFO: Attempt to probe manifest at C:\Program Files (x86)\PFPS\falcon\Microsoft.VC80.CRT\Microsoft.VC80.CRT.DLL.
>         INFO: Attempt to probe manifest at C:\Program Files (x86)\PFPS\falcon\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.6195".
> ERROR: Activation Context generation failed. End Activation Context
> Generation.

使用mt.exe向我展示了相同的版本要求。

希望不相关,但我能够让它运行的唯一机器安装了 Visual Studio。

我按照 Hans Passant 在这个问题的评论中建议的那样做了,导致我安装了 x86 版本。

在我安装新的可再发行组件之前,我有以下内容:

Microsoft Visual C++ 2005 Redistributable - KB2467175 version 8.0.51011
Microsoft Visual C++ 2005 Redistributable (x64) version 8.0.61000
Microsoft Visual C++ 2005 Redistributable (x64) - KB2467175 version 8.0.51011

在我安装了假定的 8.0.50727.6195 可再发行组件后,我最终得到:

Microsoft Visual C++ 2005 Redistributable version 8.0.61001
Microsoft Visual C++ 2005 Redistributable (x64) version 8.0.61000
Microsoft Visual C++ 2005 Redistributable (x64) - KB2467175 version 8.0.51011

我预计“之后”部分的顶线是8.0.50727.6195。我显然错过了一些东西。有人可以指出我正确的方向吗?我是不是连续 3 次得到错误的链接?

另外,这条线INFO: Find publisher policy at C:\Windows\WinSxS\manifests\x86_policy.8.0.microsoft.vc80.crt_1fc8b3b9a1e18e3b_8.0.50727.4940_none_516d712b0f495a45.manifest是什么意思?它是否也依赖于 8.0.5727.4940?

4

1 回答 1

5

8.0.50727.6195 是此安全更新。确保已安装:

MS11-025:Visual C++ 2005 SP1 Redistributable Package 安全更新说明:2011 年 6 月 14 日

http://support.microsoft.com/kb/2538242

于 2013-10-15T04:41:48.620 回答