gpt4 book ai didi

manifest - msvcp90.dll 依赖于错误的 msvcr90.dll?

转载 作者:行者123 更新时间:2023-12-04 21:49:21 25 4
gpt4 key购买 nike

我有一个用 VS2008 (amd64) 构建的 dll 项目。 dll的 list 说

<assemblyIdentity type='win32' name='Microsoft.VC90.CRT' version='9.0.21022.8' processorArchitecture='amd64' publicKeyToken='1fc8b3b9a1e18e3b' />

当我将 dll 加载到 DependencyWalker 时,它指的是 winsxs-directory
amd64_microsoft.vc90.crt_1fc8b3b9a1e18e3b_9.0.30729.6161_none_08e61857a83bc251

怎么会这样?难道这整个 list 的东西不是为了避免这样的情况,通过为每个 dll/exe 提供它构建的版本以及它所依赖的 CRT 版本的信息吗?

第二,更令人困惑的是 msvcp90.dll 取决于 msvcr90.dll 但是找不到msvcr90.dll!?!嘿,它与 msvcm90.dll 和 msvcp90.dll 在同一个 winsxs 目录中!
如果我将正确的 msvcr90.dll 复制到与我的 dll 相同的目录中,它就可以工作! (但同样,这不是我们在 DllHell 时代遇到的情况吗?因为我们有 list ,msvc*.dll 复制不应该结束吗???)

如果有人为我解释,我将不胜感激!

最佳答案

通过 list ,Microsft 引入了一种新的“dll hell ”来解决“dll hell ”:(

顺便说一下,您引用的最后一个版本 (9.0.30729) 是升级到 SP1 的 MSVCR9 CRT。
也许您可以尝试使用此版本更新您的 VS2008 以“同步” list 。

关于manifest - msvcp90.dll 依赖于错误的 msvcr90.dll?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7850541/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com