这是我的配置:
- 计算机 A - Windows 7、MS Visual Studio 2005 为 Win7 兼容性打了补丁 (8.0.50727.867)
- 计算机 B - 已安装 Windows XP SP2、MS Visual Studio 2005 (8.0.50727.42)
我的项目有一些外部依赖项(预构建的 DLL——在A上构建或从 Internet 下载)、几个从源代码构建的 DLL 和一个可执行文件。我主要在A上开发,那里一切都很好。在某些时候,我尝试在计算机B上构建我的项目,将预构建的 DLL 复制到输出文件夹。一切都很好,但试图启动我的应用程序我得到了
应用程序未能正确初始化 (0xc0150002)....
事件日志包含其中两个:
无法找到依赖程序集 Microsoft.VC80.CRT 并且上次错误是 引用的程序集未安装在您的系统上。
加上稍微有趣的
为 some.dll 生成激活上下文失败。参考错误信息:操作成功完成。
在这一点上,我正在尝试我的 Google-Fu,但徒劳无功 - 几乎所有点击都是关于在未安装 Visual Studio 的机器上运行二进制文件。然而,就我而言,可执行文件无法在它们构建的计算机上运行。
下一步是尝试依赖walker,它让我更加困惑-我从同一个盒子上的源代码构建的DLL无法找到MSVCR80.DLL
,MSVCP80.DLL
但是对于这两个DLL,可执行文件似乎没问题,即当我使用依赖walker打开可执行文件时表明MSVC?80.DLL
可以找到 s,但是当我打开我的一个 DLL 时,它说找不到。这就是我完全不知道该怎么做的地方,所以我问你,亲爱的stackoverflow :)
我承认我对整个并排的事情有点模糊,所以对该主题的一般阅读也将受到赞赏。