运行程序报“应用程序配置不正确”或者缺少运行库造成程序不可移植的问题

虚拟机里边是Windows server 2003的系统,本机VS2008开发的exe程序移植到虚拟机中Release版本正常,Debug版本不能正常启动报“应用程序配置不正确”,在安装了vcredist_x86.exe之后仍然无法解决问题,使用Dependency Walker跟踪报

Error: The Side-by-Side configuration information in "c:debug_tradeserverOTCTRADESERVER.EXE" contains errors.

 最后通过以下方法解决:

        

        

      以前我遇到这样的问题,一般会认为是几个CRT库没有拷贝到虚拟机环境。

      其实微软在其网站上提供了一种解决方案,也非常简单。原文地址我找不到了,我只针对VS做了一个解决方案以作事例。

     1 建立一个安装程序工程。

      

      2 工程文件中加入Merge Module

      

       3 从系统盘:Program FilesCommon FilesMerge 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文件之后重新运行即可解决问题

原文地址:https://www.cnblogs.com/dongsheng/p/4088781.html