Win7 上双击某个软件,弹窗提示缺少 api-ms-win-crt-runtime-l1-1-0.dll,点确定之后程序直接退出。这类报错的来源集中在两处:系统少装了一个通用 C 运行时更新,以及 VC++ 运行库没装齐。硬盘和主板一般没问题,不需要急着重装系统或者送修。
下面按原因拆开写,每条原因后面跟着确认方法和处理步骤。这些方法在 Windows 7 SP1 和 Windows 10 / Windows 11 上都实测过,按自己的系统版本对号入座。
适用系统:Windows 7 SP1 / Windows 10 / Windows 11。最后更新:2026-10-17。
Win7 电脑双击软件时,弹出的完整报错通常是这一句:
无法启动此程序,因为计算机中丢失 api-ms-win-crt-runtime-l1-1-0.dll。尝试重新安装该程序以解决此问题。
也有机器上显示的是另一句:
由于找不到 api-ms-win-crt-runtime-l1-1-0.dll,无法继续执行代码。
用工具扫一遍,缺的往往不止这一个,api-ms-win-crt-heap-l1-1-0.dll、ucrtbase.dll 经常一起报。这些都是微软通用 C 运行时的文件,随 KB2999226 进系统,Win7 出厂时并没有预置。先确认系统版本和更新状态,再对症补,比去网上找单个 dll 文件稳得多。

最常见的情况是系统从买回来就没装过 KB2999226。这个更新装上之后,C:\Windows\System32 里才会出现 api-ms-win-crt-runtime-l1-1-0.dll 和 ucrtbase.dll,新版软件启动时才有文件可调。
判断装没装,看更新历史就够,不用另外装检测工具。但要先有 SP1 再装它,顺序反了会提示「此更新不适用于你的计算机」。
确认和补装按这个顺序走:
KB2999226。这里的报错原文不要当成系统坏了。它对应的只是前置更新缺失,补上就能继续。
KB2999226 要求系统先带 Service Pack 1,没打 SP1 的 Win7 上这个更新根本装不进去。判断方法很简单,看计算机属性里的版本字样。
如果 Windows Update 卡在「正在检查更新」很久不动,先装 KB4474419、KB4490628 这两个前置补丁再重试。
系统文件补齐了,程序仍然起不来,那就往下看运行库。api-ms-win-crt-runtime-l1-1-0.dll 对应的通用 C 运行时,是随 VC++ 2015 及之后的运行库一起被软件调用的。缺一条,或者位数不对,软件照样报错退出。
Visual C++。Microsoft Visual C++ 2015-2022 Redistributable (x64) 和 (x86) 两条,只有一条就是位数没装全。msvcp140.dll、vcruntime140.dll,说明还有运行库没补全,按同样办法补 2013、2012 版本。32 位程序读的是
C:\Windows\SysWOW64里的文件,只补了System32一侧照样报错。
网上随手下的 vc_redist.x64.exe,在 Win7 上双击会提示安装失败,或者干脆没反应。原因是较新的运行库版本已经不再支持 Win7,Win7 只能用微软提供的较早 v14 版本,装错了等于白忙。
vc_redist.x86.exe、vc_redist.x64.exe。拿不准签名,可以右键安装包 → 属性 → 数字签名,看签名者是不是 Microsoft。不要从第三方站点单独下一个
api-ms-win-crt-runtime-l1-1-0.dll拷进C:\Windows\System32。它需要整批api-ms-win-crt-*文件和ucrtbase.dll版本一致,单拷一个常把错误变成 0xc000007b,甚至让原本正常的软件也打不开。

把上面四条并起来看,实际的对应关系是这样:
现象 | 对应原因 | 处理 |
|---|---|---|
装 KB2999226 提示不适用于你的计算机 | 系统没打 SP1 | 先装 KB976932 |
更新历史里搜不到 KB2999226 | 从没装过通用 C 运行时 | Windows Update 补装 |
补完系统更新,软件仍起不来 | VC++ 运行库缺一条或位数不对 | x86 与 x64 各装一遍 |
vc_redist 双击没反应 | 版本不支持 Win7 | 换较早的 v14 版 |
单拷 dll 之后报 0xc000007b | 文件版本对不上 | 走 KB2999226 或运行库整套补 |
Win10 也会提示这个 dll 丢失吗? 会,但比 Win7 少很多。Win10 自带通用 C 运行时,一般是清理软件误删或者系统更新失败才会出现。可以先在命令提示符里跑这两条,再补装 VC++ 运行库:
sfc /scannow
DISM /Online /Cleanup-Image /RestoreHealth从网上下载 dll 放进 System32 可以吗? 不建议。它并不单独工作,需要 ucrtbase.dll 和同一批 api-ms-win-crt-* 文件版本对得上。只拷一个进去,结果是报错变成 0xc000007b,或者别的软件跟着打不开。正规做法是用 KB2999226 或运行库安装包整套补上。
装了 KB2999226 还是报错怎么办? 先看软件是 32 位还是 64 位。32 位程序读的是 C:\Windows\SysWOW64 里的文件,只补了 System32 一侧照样报错。再进程序和功能确认 VC++ 2015-2022 的 x86、x64 两条都在,缺哪条补哪条,装完重启再试。
需要重装系统吗? 基本不需要。先在命令提示符里跑一次:
chkdsk C: /f确认系统盘没有坏道或者文件系统错误。没有的话,补 SP1、KB2999226 和运行库就能修好。重装系统要重新装驱动和常用软件,不划算。如果这条命令真的报出坏道,那就不是 dll 的问题了,得先把盘处理掉。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。