使用vc2005编写的程序,在运行时提示“由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题。”。依赖的dll都有在,怎么会提示错误呢。
其实这是微软的.mainfest文件惹得祸。 .mainfest文件使你的程序界面有xp风格。用记事本打开,大家看到这其实是一个.XML格式的文件。
所以,解决问题的方法有:
(推荐)1.确保在程序运行搜索目录中可以找到依赖Dll相应的.mainfest文件,对于MFC有:Microsoft.VC80.MFC.manifest,Microsoft.VC80.CRT.manifest和Microsoft.VC80.ATL.manifest等。
2.修改项目属性,采用静态链接库,但这样会导致文件大小成倍;
其实这是微软的.mainfest文件惹得祸。 .mainfest文件使你的程序界面有xp风格。用记事本打开,大家看到这其实是一个.XML格式的文件。
所以,解决问题的方法有:
(推荐)1.确保在程序运行搜索目录中可以找到依赖Dll相应的.mainfest文件,对于MFC有:Microsoft.VC80.MFC.manifest,Microsoft.VC80.CRT.manifest和Microsoft.VC80.ATL.manifest等。
2.修改项目属性,采用静态链接库,但这样会导致文件大小成倍;
另外,为了运行的程序不直接依赖于.mainfest文件,可以将其加入到程序资源中,用记 事本或其它文本编辑工具手动修改工程目录下的资源文件(.rc),在文件最后加上一行:
1 RT_MANIFEST “Style.manifest”
即可.