前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >[Setting]win7下运行exe失败:应用程序无法启动,因为应用程序的并行配置不正确

[Setting]win7下运行exe失败:应用程序无法启动,因为应用程序的并行配置不正确

作者头像
祥知道
发布2020-03-10 15:13:05
20.6K0
发布2020-03-10 15:13:05
举报
文章被收录于专栏:祥的专栏祥的专栏

win7下运行exe失败:应用程序无法启动,因为应用程序的并行配置不正确

1.问题描述

承接了一个项目,给甲方交接的时候,在它的电脑中运行出现了这个错误。

应用程序无法启动,因为应用程序的并行配置不正确。有关详细信息,请参阅应用程序事件日志,或使用命令行 sxstrace.exe 工具

当时没有截图,不过图像的效果是这样的:

pic1
pic1

因为他们是新装的系统,给他们装的是Win7 32bit的系统,其它什么都没安装,根据网上的说明,估计是两个问题。

  1. 系统设置问题,设置不正确;
  2. 如果1的问题解决了,还出现问题。则系统缺少Microsoft Visual C++ 20XX(运行库)文件(XX表示:05、08、10)。

2.网上解决的一般方法

2.1 对于系统配置不正确

  1. 开始 - 运行(输入services.msc)- 确定或回车,打开:服务(本地);
这里写图片描述
这里写图片描述

2. 我们在服务(本地)窗口找到:Windows Modules Installer服务,查看是否被禁用;

这里写图片描述
这里写图片描述

3. 如果Windows Modules Installer服务被禁用,我们必须把它更改为启用 - 手动,重启计算机,再安装应用程序。

这里写图片描述
这里写图片描述

2.2 对于缺少Microsoft Visual C++ 20XX(运行库)

网上是去百度上搜索对应的库下载安装。 我是直接用驱动精灵里面系统助手系统组件进行自动修复。

这里写图片描述
这里写图片描述

3.问题依然存在

出现这样错误是因为系统缺少某些运行库,用sxstrace工具可以看究竟,用法:

  1. 管理员运行cmd ,输入:SxsTrace Trace -logfile:SxsTrace.etl,启动跟踪;
  2. 执行目标程序,在弹出错误对话框后(不要关闭对话框);
  3. 回到cmd命令行,按回车键,然后输入执行命令:SxsTrace Parse -logfile:SxsTrace.etl -outfile:SxsTrace.txt

下面是我运行的情况:

C:\Windows\system32SxsTrace Trace -logfile:SxsTrace.etl 已启动跟踪。跟踪将保存到文件 SxsTrace.etl。 按 Enter 停止跟踪… C:\Windows\system32>SxsTrace Parse -logfile:SxsTrace.etl -outfile:SxsTrace.txt 正在分析日志文件 SxsTrace.etl… 分析完毕! 将输出保存到文件 SxsTrace.txt。 C:\Windows\system32>

打开SxsTrace.txt,下面是其内容:

代码语言:javascript
复制
=================
开始生成激活上下文。
输入参数:
    Flags = 0
    ProcessorArchitecture = x86
    CultureFallBacks = zh-CN;zh-Hans;zh;en-US;en
    ManifestPath = D:\nwpu\simulation_mapSendUDP\Test_SendPackUDP.exe
    AssemblyDirectory = D:\nwpu\simulation_mapSendUDP\
    Application Config File = 
-----------------
信息: 正在解析清单文件 D:\nwpu\simulation_mapSendUDP\Test_SendPackUDP.exe。
    信息: 指令清单定义标识是 (null)。
    信息: 参考: Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"
信息: 正在解析参考 Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。
    信息: 正在解析 ProcessorArchitecture x86 的参考。
        信息: 正在解析区域性 Neutral 的参考。
            信息: 正在应用绑定策略。
                信息: 未找到发布服务器策略。
                信息: 未找到绑定策略重定向。
            信息: 开始程序集探测。
                信息: 未找到 WinSxS 中的程序集。
                信息: 尝试在 C:\Windows\assembly\GAC_32\Microsoft.VC90.DebugCRT\9.0.21022.8__1fc8b3b9a1e18e3b\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
                信息: 尝试在 D:\nwpu\simulation_mapSendUDP\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
                信息: 尝试在 D:\nwpu\simulation_mapSendUDP\Microsoft.VC90.DebugCRT.MANIFEST 上探测指令清单。
                信息: 尝试在 D:\nwpu\simulation_mapSendUDP\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.DLL 上探测指令清单。
                信息: 尝试在 D:\nwpu\simulation_mapSendUDP\Microsoft.VC90.DebugCRT\Microsoft.VC90.DebugCRT.MANIFEST 上探测指令清单。
                信息: 未找到区域性 Neutral 的指令清单。
            信息: 结束程序集探测。
    错误: 无法解析参考 Microsoft.VC90.DebugCRT,processorArchitecture="x86",publicKeyToken="1fc8b3b9a1e18e3b",type="win32",version="9.0.21022.8"。
错误: 生成激活上下文失败。
结束生成激活上下文。

从中得到一些信息:

“错误: 无法解析参考 Microsoft.VC90.DebugCRT,processorArchitecture=”x86”,publicKeyToken=”1fc8b3b9a1e18e3b”,type=”win32”,version=”9.0.21022.8”。 错误: 生成激活上下文失败。”

可以知道出错的exe是用VC90编译器编译的(我其中一个类库使用VS2008编译的),VC90是visual studio 2008 中的C++开发工具。 安装visual studio 2008 中的C++开发工具后,就可以运行了。

简单的解决办法: C:\Program Files\Microsoft Visual Studio 9.0\VC\redist\amd64\Microsoft.VC90.CRT 将其中的所有文件(Microsoft.VC90.CRT.manifest,msvcm90.dll,msvcp90.dll,msvcr90.dll)拷贝到你的exe文件同级别的位置即可,或根据编译所用的vc版本来找到相应的文件

但是,还是不行,于是我,给目标环境装了VS2008,问题完美解决。什么鬼!什么鬼!什么鬼!,就这样吧,许多问题对我来说,依然是玄学问题。

我提出了一个设想,如果这个程序调用的那个类库LIB(就是我用VS2008编写的),如果用静态编译,是不是不会出现这个问题,当然我也不可能为了测试这个软件把现在电脑里的VS2008卸载了,以后有机会在测测吧。

本文参与 腾讯云自媒体分享计划,分享自作者个人站点/博客。
如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 作者个人站点/博客 前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • win7下运行exe失败:应用程序无法启动,因为应用程序的并行配置不正确
    • 1.问题描述
      • 2.网上解决的一般方法
        • 2.1 对于系统配置不正确
        • 2.2 对于缺少Microsoft Visual C++ 20XX(运行库)
      • 3.问题依然存在
      领券
      问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档