时间:2014-10-31 15:50:33 来源: 复制分享
很多朋友遇到过开启QQ、PS、Snagit等程序时,报出“由于应用程序配置不正确,应用程序未能启动。重新安装应用程序可能会纠正这个问题”。如下图:
图1 某程序报错
原因分析
综合互联网上的资料,绝大部分是以下两种原因:
1、该问题的原因之一:您的计算机的Windows Installer服务没有开启。
其解决方法是打开控制面板→管理→服务,将Windows Installer服务开启,并设为自动,再重启电脑。
2、该问题的原因之二:您的计算机上没有安装Visual Studio的运行库。
该应用程序是Visual Studio 2005及其以上版本开发的,其依赖于相应的运行库,而您的电脑上没有安装该运行库。(对于VC6或VS2003开发的应用程序, 如果缺少库文件,是会提示缺少“**.dll”,但VS2005或VS2008的却只提示“由于应用程序配置不正确……”。)
其解决方法不是重装应用程序,更不是重装系统,而是安装相应的运行库(Microsoft Visual C++ 20** Redistributable Package,即vcredist_x86.exe。
★区分您的程序是VS的哪个版本开发的确实有点困难,甚至有些软件是多个版本开发的,那就多种vcredist_x86.exe都装上,它们互相兼容,就能解决您计算机上大多数软件的同类问题了。 (2005和2008的都装上后“添加/删除程序”会显示如图5)。
★以下以“20**”代表“2005”或“2008”或“2009”或“2010”。
所需安装包
仅需一个文件微软官网下载中心下载的vcredist_x86.exe
步骤
1、打开控制面板→管理工具→服务,如果Windows Installer服务没有开启,则设其为自动,再重启电脑。如果没有解决问题则继续。
2、可以初步判断您的程序是VS的哪个版本开发的。
(打开应用程序所在目录,搜索是否有mfc或msvc开头的文件,如果有,请查看其文件版本可知VC的版本。请看下图,8表示VC8.0开发的,9表示VC9.0开发的)
VS2003的VC版本是VC.1,VS2005的VC版本是vc8.0,VS2008的VC版本是vC9.0。
图3 Snagit中的MFC文件
图4 GeeTeeDee中的VC9文件
3、在控制面板的“添加/删除程序”查看本机是否安装了Microsoft Visual C++ 20** Redistributable Package。如下图:
图5
4、如果没有上图中的Microsoft Visual C++ 20** Redistributable,则继续。
5、从微软下载中心下载Microsoft Visual C++ 20** Redistributable Package。该文件有32位的(X86),也有64位的(X64)。下载地址如下。
6、双击运行刚才下载到的vcredist_x86.exe,其会自动安装Microsoft Visual C++ 20** Redistributable Package
7、检查“添加/删除程序”里是否有了该项
8、如果有该项,则说明安装成功。然后开启你的应用程序,如果没有报错,则说明问题解决。
9、如果还未解决,则互联网上还有很多资料可查。
注意事项
该文件有32位的(X86),也有64位的(X64),请注意区别下载。
★Microsoft Visual C++ 2005 Redistributable Package下载地址:
(x86):
http://www.microsoft.com/downloads/details.aspx?familyid=32BC1BEE-A3F9-4C13-9C99-220B62A191EE&displaylang=zh-cn
(x64):
http://www.microsoft.com/downloads/details.aspx?familyid=90548130-4468-4BBC-9673-D6ACABD5D13B&displaylang=zh-cn
★Microsoft Visual C++ 2008 Redistributable Package的下载地址 (x86):
http://www.microsoft.com/download/en/details.aspx?displaylang=en&id=5582
★Microsoft Visual C++ 2010 Redistributable Package
(x86):
http://www.microsoft.com/download/en/details.aspx?id=5555?
(x64):
http://www.microsoft.com/download/en/details.aspx?id=14632?