The application has failed...(应用程序配置不正确)

时间:2021-05-19

在我们开发工程中,可能有些情况下,不能在本机进行调试。这个时候我们一般会使用VM(vmware)建立一个虚拟机环境,然后把编译过的程序放在该虚拟机环境下执行调试。可是在某些情况下,不管我们编译的是debug还是release版本,在虚拟机环境中都会报“由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。”(The application has failed to start because its side-by-side configuration is incorrect.Please see the application event log or use the command-line sxstrace.exe for more detail.)这样的错误。转载请标明出处。

以前我遇到这样的问题,一般会认为是几个CRT库没有拷贝到虚拟机环境。可是这个方法对我所遇到的场景不奏效,于是我又在虚拟机中装上了我程序的开发环境VS2005。可是在真实机中生成的文件依然不能在虚拟机中运行,仍然报以上的错误。

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

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

2 工程文件中加入Merge Module

3 从系统盘:\Program Files\Common Files\Merge Modules选择加入需要的文件

因为我的IDE环境是xp(32bit)+VS2005,所以我选择了以下文件(是我环境中所有的VC80+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 在虚拟机中安装上步生成的文件

经过以上步骤,我们编的debug和release版程序便可在虚拟机里正常运行了。

感谢阅读,希望能帮助到大家,谢谢大家对本站的支持!

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章