Windows 并排程序集默认版本 (msvcr90.dll)

Windows Side-by-side assembly default version (msvcr90.dll)

程序集的默认版本存储在哪里?

当我 运行 python.exe(2.6 或 2.7)并使用 Process Explorer 检查它时,我看到它加载了最新版本的 msvcr90.dll(9.0.30729.9247 在我的个人电脑)。 Python 有一个内部清单,指定 msvcr90.dll 的版本 9.0.21022.8,但仍加载较新的版本。 Python 2.6 有一个 Microsoft.VC90.CRT.manifest 文件也指定了 9.0.21022.8 但总是加载较新的版本。

使用进程监视器我可以看到加载 msvcr90.dll 时的所有其他实例,它们都使用 9.0.30729.9247.

我的 PC 一定在某处告诉所有这些程序使用较新的版本,但我似乎无法找到在哪里。我的 WinSxS 文件夹中有很多版本的 Microsoft.vc90.crt。

如果我无法更改默认版本,有什么方法可以 'downgrade' 我的 Microsoft.vc90.crt?到一个看起来更标准的版本(9.0.30729.6161)

PS。我不知道我的 9.0.30729.9247 版本的 Microsoft.vc90.crt 来自哪里

注册表中指定了默认 Windows 并行程序集版本

对于微软。vc90.crt版本指定于:

    HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\SideBySide\Winners\x86_policy.9.0.microsoft.vc90.crt_

根据需要将默认版本更改回旧版本