虚拟机里边是Windows server 2003的系统,本机VS2008开发的exe程序移植到虚拟机中Release版本正常,Debug版本不能正常启动报“应用程序配置不正确”,在安装了vcredist_x86.exe之后仍然无法解决问题,使用Dependency Walker跟踪报
Error: The Side-by-Side configuration information in "c:\debug_tradeserver\OTCTRADESERVER.EXE" contains errors.
最后通过以下方法解决:
以前我遇到这样的问题,一般会认为是几个CRT库没有拷贝到虚拟机环境。
其实微软在其网站上提供了一种解决方案,也非常简单。原文地址我找不到了,我只针对VS做了一个解决方案以作事例。
1 建立一个安装程序工程。
2 工程文件中加入Merge Module
3 从系统盘:\Program Files\Common Files\Merge Modules目录选择加入需要的文件
因为我的虚拟机环境是32位的,所以我只选择了以下文件都是x86的
policy_8_0_Microsoft_VC80_OpenMP_x86.msm
policy_8_0_Microsoft_VC80_MFCLOC_x86.msm
policy_8_0_Microsoft_VC80_MFC_x86.msm
policy_8_0_Microsoft_VC80_DebugOpenMP_x86.msm
policy_8_0_Microsoft_VC80_DebugMFC_x86.msm
policy_8_0_Microsoft_VC80_DebugCRT_x86.msm
policy_8_0_Microsoft_VC80_CRT_x86.msm
policy_8_0_Microsoft_VC80_ATL_x86.msm
Microsoft_VC80_OpenMP_x86.msm
Microsoft_VC80_MFCLOC_x86.msm
Microsoft_VC80_MFC_x86.msm
Microsoft_VC80_DebugOpenMP_x86.msm
Microsoft_VC80_DebugMFC_x86.msm
Microsoft_VC80_DebugCRT_x86.msm
Microsoft_VC80_CRT_x86.msm
Microsoft_VC80_ATL_x86.msm
4 生成debug和release版文件
5 在虚拟机中安装上步生成的.msi文件之后重新运行即可解决问题