使用COM服务器C+的并行错误+;可再发行已安装

使用COM服务器C+的并行错误+;可再发行已安装,com,visual-studio-2005,windows-7-x64,side-by-side,Com,Visual Studio 2005,Windows 7 X64,Side By Side,我遇到了一个尴尬的情况,我有一个必须在x64应用程序中使用的32位lib。为了解决这个问题,我创建了一个COM服务器应用程序来处理32位和64位进程之间的通信 一切都是在Windows 7上的VS2005中构建的,版本8.0.50727.867。我注意到的一点是,我的版本与SP1 redist版本不匹配(8.0.50727.762)。我认为这是由于VS2005的Vista更新,因为我找不到更高版本的redist 它在我的开发机器上工作,但在我的Win7 x64机器上不工作。因此,错误是: “C:

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

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

它在我的开发机器上工作,但在我的Win7 x64机器上不工作。因此,错误是:

“C:\Program Files\ScanScope\Controller\ACBarOmniServer.exe”的激活上下文生成失败。找不到相关程序集Microsoft.VC80.CRT、processorArchitecture=“x86”、publicKeyToken=“1fc8b3b9a1e18e3b”、type=“win32”、version=“8.0.50727.6195”。请使用sxstrace.exe进行详细诊断

在此之前,我安装了VS2005 C++可重分配包。我又试着安装了一次,没有成功。我翻遍了我的Winsxs文件夹,果然,版本不见了

从运行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安装程序时,它会在一两秒钟内完成并消失。现在,我确实看到它安装在Add/Remove程序中,并将文件夹添加到sxs文件夹中,但这让我感到奇怪


如果任何人有这方面的经验,将不胜感激。如果您需要我遗漏的任何信息,请告诉我。

找到了正确的可再发行补丁

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