如何解决 应用程序无法启动 因为应用程序的并行配置不正确 问题

应用程序事件日志中:

“C:\windows\system32\test.exe”的激活上下文生成失败。 找不到从属程序集 Microsoft.VC80.MFC,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="8.0.50727.762"。 请使用 sxstrace.exe 进行详细诊断。

出现这类问题,是由于VC2005编译出来的程序文件,采用了manifest方式来指定dll文件。对于win98、win2000系统,把exe文件和VC的 dll连接库放到一起就成了。对于winxp、win2003系统就要麻烦的多了,VC的连接库默认是被放到了winsxs目录下。

解决办法就是:使用vcredist_x86.exe再次分发程序。

下载地址:(http://download.microsoft.com/download/7/9/8/798325b7-8993-4ef9-9148-8db9ff4187fc/vcredist_x86.exe)

  1. 对解决方案来说,VS设置成debug版本和release版本是不一样的。关键在于打包的时候的manifest所制定的路径不同。
  2. 对于部署的程序,VS有两套方案,共享并行程序集和私有程序集部署方法,前者其实就是依赖的东西在目标机的windows\winsxs目录下,后者要求程序自带
  3. 编译程序的时候,主要设置在两个地方,第一个是项目的general配置里面的MFC,第二个是项目配置里面的C/C++下面的Code Generation里面的Runtime Library设置里面。如果你的程序在修改过之后还能编译的话,那就可以了。

今天在准备发布用VS2005写的那个程序时,拷贝到我同事机器上,双击突然出现了“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题“,这个问题很让我意外,以前只出现过缺少DLL的情况,而这次出现这个问题,让我一时没办法。想想,无非是两个原因引起的,要么是他没有安装VS2005的原因,要么是我的程序里依赖了其它的一些库。于是百度一下,发现好多相关主题。我是按照这个帖子解决的:

在VS2005下用C++写的程序,在一台未安装VS2005的系统上,

用命令行方式运行,提示:

“系统无法执行指定的程序”

直接双击运行,提示:

“由于应用程序的配置不正确,应用程序未能启动,重新安装应用程序可能会纠正这个问题”

以前用VC6和VS2003的话, 如果缺少库文件,是会提示缺少“**.dll”,但是用VS2005却没有这样的提示。

自己实验了一下,感觉以下几种解决办法是可行的:

方法一:

在类似C:\Program Files\Microsoft Visual Studio 8\VC\redi

st\Debug_NonRedist\x86\Microsoft.VC80.DebugCRT 下找到了下列文件:

msvcm80d.dll

msvcp80d.dll

msvcr80d.dll

Microsoft.VC80.DebugCRT.manifest

把这几个文件拷贝到目标机器上,与运行程序同一文件夹或放到system32下,就可以正确运行了。

其他release版、MFC程序什么的都是拷redist下相应文件夹下的文件就可以了,文件夹后都有标识!

方法二:

修改编译选项,将/MD或/MDd 改为 /MT或/MTd,这样就实现了对VC运行时库的静态链接,在运行时就不再需要VC的dll了。

方法三:

工程-》属性-》配置属性-》常规-》MFC的使用,选择“在静态库中使用mfc”

这样生成的exe文件应该就可以在其他机器上跑了。

方法四:

你的vc8安装盘上找到再分发包vcredist_xxx.exe和你的程序捆绑安装。

再分享一下我老师大神的人工智能教程吧。零基础!通俗易懂!风趣幽默!还带黄段子!希望你也加入到我们人工智能的队伍中来!https://blog.csdn.net/jiangjunshow

原文地址:https://www.cnblogs.com/skiwnchiwns/p/10343274.html

时间: 2024-09-28 10:43:33

如何解决 应用程序无法启动 因为应用程序的并行配置不正确 问题的相关文章

解决Pyqt打包后运行报错:应用程序无法启动 因为程序的并行配置不正确

做了一个生成二维码的小程序:http://www.cnblogs.com/dcb3688/p/4241048.html 直接运行脚本没问题,用pyinstaller打包后再运行就直接报错了: 应用程序无法启动 因为程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具. 网上找的解决方法: 1.   安装Microsoft Visual C++ 2008 Redistributable 2.  开始 - 运行(输入services.msc)- 确

Apache HTTP服务器安装后报:无法启动,因为应用程序的并行配置不正确-(已解决)

原创作品,出自 "深蓝的blog" 博客,欢迎转载,转载时请务必注明出处,否则有权追究版权法律责任. 深蓝的blog:http://blog.csdn.net/huangyanlong/article/details/46375453 安装Apache Http Server后报"应用程序无法启动,因为应用程序的并行配置不正确"错误. 无法启动: 错误信息:应用程序无法启动,因为应用程序的并行配置不正确.请参阅应用程序事件日志,或使用sxstrace.exe. 解决

关于并行配置不正确,应用程序无法启动的问题

这二天的一个软件发布后,在自己的电脑与测试电脑上和虚拟机上运行都没有问题,当弄了一台新电脑,准备安装好软件,给客户用时,出现"应用程序无法启动,应用程序的并行配置不正确". 这回有点傻了,这个错误都没见过,在说,我程序编译时用的是静态库编译,如果没有库,也会报缺少**.DLL库啊,报个这个错,有点看不懂的感觉,其它的运行时库用的是多线程DLL(/MD)而不是多线程(/MT),因为用的是VC与C#混合编程,需要用到公共语言运行库(/CLR),没办法,找万能的狗哥,网页上大家都说是因为系统

打开某exe提示"应用程序无法启动,因为应用程序的并行配置不正确……"的解决方案

本人在新安装好了的windows server 2008 r2 (64位)上运行"RefilesName V2.0(文件批量改名).exe",结果提示: 应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具. 开始安装了64位的VC++ 2010.2015等,但仍未解决.最后安装了32位的VC++ 2005,问题解决. Microsoft Visual C++ 2005 SP1 Redistributable

Chrome浏览器启动报错:应用程序无法启动,因为应用程序的并行配置不正确。

因为国庆节了,难得关一次机(可能搞IT的习惯吧),结果给祖国庆祝完70寿辰之后归来,启动电脑,就打不开Chrome浏览器了,报错如下: 应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具. 然后我对比了我以前安装的Chrome和现在的Chrome文件夹,发现只有如下目录中的不同(其他都一样): 问题就出现在这个目录中的:67.0.3396.99.manifest配置文件 解决方法:只需要把67.0.3396.99.m

应用程序无法启动,因为应用程序的并行配置不正确

在Win7中运行某些软件时,突然提示出错信息“应用程序无法启动,因为应用程序的并行配置不正确.有关详细信息,请参阅应用程序事件日志,或使用命令行sxstrace.exe工具.”查看win7应用程序事件日志:计算机——>右击——>管理——>事件查看器——>应用程序和服务日志 出现这个问题是因为安装windows7 后,或使用ghost版本安装后, windows7没有安装Visual C++ 库,而有些软件需要Visual C++ 库 所以到微软官方网站下载:Microsoft Vi

[C#]在程序中启动另外一个程序

C#实现在程序中启动另外一个程序 ProcessStartInfo info = new ProcessStartInfo();    info.FileName = "notepad++.exe";//要启动的程序外部名称   info.Arguments = "1009.txt";//设置外部程序的启动参数    info.WorkingDirectory = @"D:\Users\Desktop";    Process pro;//申明一

程序无法启动此应用程序,因为计算机中丢失glut32.dll

原文链接http://blog.csdn.net/tyxkzzf/article/details/40789901 今天打开一个OpenGL源码,各种修改之后想要运行看一下效果,结果在我的开发环境下出现缺少相应的dll库: Windows7 64位+VS2010 提示:程序无法启动此应用程序,因为计算机中丢失glut32.dll...... 果断查看System32文件夹,发现有这个文件,那就不明白了,为什么还是找不到呢,不合理啊. 一时半会儿没找到,为了尽快看到代码运行的效果,就把这个dll拷

008.虚拟机内打开2009版显ip的qq的时候,应用程序并行配置不正确使用命令行sxstrace.exe,解决办法

"应用程序无法启动,因为应用程序的并行配置不正确.请参阅应用程序事件日志,或使用命令行sxstrace.exe工具"问题的处理方法. 方法一: 1.开始 - 运行(输入services.msc)- 确定或回车,打开:服务(本地): 2.我们在服务(本地)窗口找到:Windows Modules Installer服务,查看是否被禁用: 3.如果Windows Modules Installer服务被禁用,我们必须把它更改为启用 - 手动,重启计算机,再安装应用程序. 方法二:如果还是出

因为应用程序的并行配置不正确

Windows7平台上有一个强大的SxsTrace工具,可以跟踪调试应用程序运行时需要的动态库的版本和路径. SxsTrace使用的方法: 1.首先必须以Administrator用户身份登录,打开cmd命令行: 2.也可以以其它用户登录,然后打开cmd命令行,执行:runas /user:administrator cmd,输入Administrator用户密码后,系统打开一个以Administrator用户登录的cmd命令行: 3.在Administrator用户登录的命令行下执行命令:cd