一、解决:
最简单的:据二步的报错信息 【参考是】的version='8.0.50727.6195’复制,到报错程序根目录下找到文件【Microsoft.VC80.CRT.manifest】把对应的version改成参考的版本号,原来的版本号xxx.762直接替换,即可启动程序
方法二:到网上找到正确的VC++版本安装到电脑里(非常难找,不推荐)
方法三:直接删除所有【.manifest】文件;
原理:很多程序会动态连接VC++库,即电脑上有哪个版本就连接哪个,或自己目录内就有需要的vc++ 库:msvcm80.dll msvcp80.dll msvcr80.dll,删除了配置信息,它会优先找自己目录内的库,即可成功启动
二、分析错误原因&查看报错详情:
计算机——右键——管理——windows日志——应用程序
报错如下:
“D:\ProgramGreen\Photoshop cs5\Photoshop.exe”的激活上下文生成失败。在指令清单或策略文件“D:\ProgramGreen\Photoshop cs5\Microsoft.VC80.CRT.MANIFEST”的第 4 行出现错误。 在指令清单中找到的组件标识与请求组件的标识不匹配。
【参考是 】Microsoft.VC80.CRT,processorArchitecture=“x86”,publicKeyToken=“1fc8b3b9a1e18e3b”,type=“win32”,version=“8.0.50727.6195”。
【定义是 】Microsoft.VC80.CRT,processorArchitecture=“x86”,publicKeyToken=“1fc8b3b9a1e18e3b”,type=“win32”,version=“8.0.50727.762”。 请使用 sxstrace.exe 进行详细诊断。
三、错误分析:
原因1:由于v c++版本号和报错程序目录内的文件 【Microsoft.VC80.CRT.manifest 】配置的版本不一致,或vc++根本没安装导致
原因2:服务内的【Windows Modules Installer】服务没有正确配置,正常应该是手动,其它配置会出错
附件:修改后的 文件
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<assembly xmlns="urn:schemas-microsoft-com:asm.v1" manifestVersion="1.0">
<noInheritable