系统是Win8.1 64位原版镜像安装的,安装后关闭更新。之前都正常,忽然某天开机,不管运行什么程序都报错误(系统自带的好像可以,部分程序也没问题)了:
系统错误:无法启动此程序,因为计算机丢失api-ms-win-crt-heap-l1-1-0.dll 。【The program cant' start becuase api-ms-win-crt-heap-l1-1-0.dll is missing from your computer. Try reinstalling the program to fix this problem.】解决步骤:初步搜索是vc_redist.x64.exe【Visual C++ Redistributable for Visual Studio 2015 RC】的问题。重新下载安装vc_redist.x64.exe出错,错误代码Error 0x80240017。点击错误窗口的日志,找到如下问题:
[158C:182C][2016-07-28T14:42:05]i301: Applying execute package: Windows81_x64, action: Install, path: C:\ProgramData\Package Cache\FC6260C33678BB17FB8B88536C476B4015B7C5E9\packages\Patch\x64\Windows8.1-KB2999226-x64.msu, arguments: '"C:\Windows\SysNative\wusa.exe" "C:\ProgramData\Package Cache\FC6260C33678BB17FB8B88536C476B4015B7C5E9\packages\Patch\x64\Windows8.1-KB2999226-x64.msu" /quiet /norestart'[158C:182C][2016-07-28T14:42:06]e000: Error 0x80240017: Failed to execute MSU package.[1E54:1E98][2016-07-28T14:42:06]e000: Error 0x80240017: Failed to configure per-machine MSU package.[1E54:1E98][2016-07-28T14:42:06]i319: Applied execute package: Windows81_x64, result: 0x80240017, restart: None[1E54:1E98][2016-07-28T14:42:06]e000: Error 0x80240017: Failed to execute MSU package. Windows8.1-KB2999226-x64.msu安装出问题,继续搜索。参考文献1中的办法: 1.C:\ProgramData\Package Cache\469A82B09E217DDCF849181A586DF1C97C0C5C85\packages\Patch\amd64\Windows8.1-KB2999226-x64.msu copy this file to a folder you like, and 2.Create a folder XXXX in that and execute following commands from Admin command propmt 3.wusa.exe Windows8.1-KB2999226-x64.msu /extract:XXXX 4.DISM.exe /Online /Add-Package /PackagePath:XXXX\Windows8.1-KB2999226-x64.cab vc_redist.x64.exe /repair last command need not be run. Just execute exe once again.安装vc_redist.x64.exe成功,后问题依旧。【过程中胡乱的安装了32位vc_redist.x86.exe,不过应该对最后的结果没影响,如果按照我这个方法最后问题依旧可以尝试安装32位的vc_redist.x86.exe】继续搜索到了参考2,后面有个回答是说补丁Windows8.1-KB2999226-x64.msu安装不上,以因为缺少KB2919355补丁。
Doing further research, I found that KB2919355 is required for Visual C++ 2015 Runtimes. Once this patch is applied, I could run KB2999226 and install Visual C++ 2015 without issues. As soon as that was installed, all of my office apps opened without issue.The odd thing is that I actually had KB2919355 installed. It's applied to my installation media through Configuration Manager. I checked Windows Updates with Microsoft and it offered KB2919355, and it was a very small update (which I know that KB2919355 is actually a rather large update!). 一查发现KB2919355补丁是Windows 8.1 update,遂更新Windows 8.1至Windows 8.1 update[采用cn_windows_8.1_pro_vl_with_update_x64_dvd_6050873.iso镜像]。最后重新卸载vc_redist.x64.exe及重新安装vc_redist.x64.exe。问题解决。
主要步骤参考文中加粗部分,其实就两步就搞定了。
参考文献:
1.
2.
3.Visual C++ Redistributable下载:,