gpt4 book ai didi

com - 使用 COM 服务器的并排错误,安装了 C++ 可再发行组件

转载 作者:行者123 更新时间:2023-12-01 12:57:40 26 4
gpt4 key购买 nike

我有一个尴尬的情况,我有一个必须在 x64 应用程序中使用的 32 位库。为了解决这个问题,我创建了一个 COM 服务器应用程序来处理 32 位和 64 位进程之间的通信。

一切都是在 Windows 7 上的 VS2005 中构建的,版本 8.0.50727.867。我注意到的一件事是我的版本与 SP1 redist 版本 (8.0.50727.762) 不匹配。我认为这是由于 VS2005 的 Vista 更新所致,因为我找不到更高版本的 redist。

它可以在我的开发机器上运行,但不能在我的 Win7 x64 机器上运行。因此错误是:

Activation context generation failed for "C:\Program Files\ScanScope\Controller\ACBarOmniServer.exe". Dependent Assembly Microsoft.VC80.CRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.6195" could not be found. Please use sxstrace.exe for detailed diagnosis.

在此之前,我已经安装了 VS2005 C++ 可再发行组件包。我尝试再次安装它,没有运气。我翻遍了我的Winsxs文件夹,果然,版本不见了。

当我从 here 运行 redist 安装程序时我的 sxs 文件夹中有以下版本的 CRT:

  • 8.0.50727.42
  • 8.0.50727.762
  • 8.0.50727.4053
  • 8.0.50727.4940

当然,我需要版本 8.0.50727.6195

我已经设置了所有可以静态链接的东西(即/MT,到 MFC 的静态链接,没有到 ATL 的链接),但其他一些东西取决于 C 运行时的动态版本。

我用过 sxstrace 但运气不好。我开始跟踪,启动我的程序,得到错误,结束跟踪,并将其解析到另一个文件中。解析后的文件完全是空的。

值得注意的一件有趣的事;当我在 Win7 机器上运行 redist 安装程序时,它会在一两秒内完成并消失。现在,我确实看到它安装在“添加/删除程序”中,并且它确实将文件夹添加到 sxs 文件夹,但这让我觉得很奇怪。

如果有人对此帮助有任何经验,我们将不胜感激。如果您需要我遗漏的任何信息,请告诉我。

最佳答案

找到正确的可再发行补丁 here .

这是发送给 VS2005 用户的更新,而不是一般公众。 叹气,好吧。

关于com - 使用 COM 服务器的并排错误,安装了 C++ 可再发行组件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8827865/

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