关机弹「程序结束」,多半来自注册表 Run 启动项或残留服务里指向了已经卸载的程序。先记下弹窗里的程序名,在任务管理器禁用可疑启动项,再清 Run 项和失效服务;手改没把握就用软领DLL系统修复这类注册表修复工具扫描处理,最后用系统还原点和 sfc 兜底。以下方法在 Windows 10/11 实测可用。
多数情况是软件卸载不干净、更新留下的路径失效造成的,系统和硬件本身大多没坏,照着往下排查就行,不必急着重装或送修。
适用系统:Windows 10/11;最后更新:2026-09-21。
关机老弹「程序结束」,先看它是哪种残留
点关机后屏幕先黑一下又亮回来,弹出「此程序正在阻止关机」,或者「xxx.exe - 应用程序错误」,窗口里写着「该内存不能为 written」,几秒后自己消失,下次开机一切正常。
这类弹窗的进程名就是线索。它对应的软件多半早就卸载了,只是注册表 Run 项或服务键里还留着启动指令。Windows 会等这些进程退出,等不到就弹窗。
先判断弹窗里的程序名和它指向的路径,再对症处理,能省去大量盲目重装和反复重启的时间。
方法1 在任务管理器里禁用可疑启动项
大部分关机弹窗来自开机自启的卸载残留,先禁用可疑启动项最省事。判断依据就是弹窗里那个程序名,禁用后正常关机一次就能验证。
别一刀切。输入法、声卡控制面板、指纹识别这类条目禁掉,往往带出新的毛病,只挑名字对得上的那一项。
操作步骤
- 趁弹窗还在屏幕上,记下窗口里的程序名和扩展名,例如 xxx.exe,抄写或者拍照都可以
- 按 Ctrl+Shift+Esc 打开任务管理器,切到「启动应用」选项卡
- 对照弹窗里的程序名找条目,右键选「禁用」;不要一次禁用全部,系统项和常用软件保持启用
- 重启一次再正常关机,看弹窗还在不在,用来确认是不是启动项引起的
方法2 用事件查看器锁定关机时报错的模块
弹窗一闪而过、看不清进程名时,事件查看器能把出错模块固定下来。关机那一刻写进日志的「应用程序错误」条目,会带上模块的完整路径。
日志里的异常代码也有用,比如 0xc0000005 通常指向访问冲突,配合模块名能判断是哪个程序在关机时卡住不退。
操作步骤
- Win+R → 输入 eventvwr.msc 回车,左侧展开 Windows 日志 → 应用程序
- 右侧点「筛选当前日志」,按关机时间点找「应用程序错误」「应用程序挂起」条目
- 双击条目看「错误模块名称」和「异常代码」,记下里面的 exe 或 dll 完整路径
- 路径指向已卸载软件的目录或者临时文件夹的,就是下一步要清理的对象
路径落在 C:\Program Files\旧软件名 这类已经空掉的文件夹里,基本可以确定是卸载残留,接着去清注册表。
用「软领DLL系统修复」更省事
软领DLL系统修复里的注册表修复,扫的就是这次关机弹窗的源头:无效的启动项、指向空路径的 Run 值、残留的服务键值。扫完列出具体条目,能清的清、能修的修,不用自己在注册表编辑器里导出备份、逐条比对,也不用记 sc delete 的命令格式。
系统软件异常这一项专门处理卸载残留留下的启动项和失效服务键值,扫出来的问题会标到具体条目上,你可以先看路径再决定动哪几个,处理完重启关机验证一次就行。

全面诊断会把系统各模块的状态过一遍,除了这次导致关机弹窗的条目,其它隐藏异常也会一并标出来,适合清完一轮还拿不准有没有漏网项的时候跑一次。

软领是知名国产软件品牌,20 年技术沉淀、服务千万用户,软件在软领官网 wyouhua.com 直接下载,安装无捆绑勾选项。遇到拿不准的条目,软件里可点客服按钮联系真人客服,复杂情况有工程师远程协助。

方法3 备份后清理注册表 Run 启动项
Run 键是卸载残留最集中的地方,动手前先导出备份,删错了双击导回就行。HKCU 和 HKLM 两处都要看,前者管当前用户,后者管这台电脑上的所有用户。
判断标准很简单:数值指向的 exe 路径已经不存在,或者落在已卸载软件的文件夹里,就属于可以清掉的残留。指向 System32 下正常程序的项别碰。
操作步骤
- Win+R → 输入 regedit,先备份:reg export "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" D:\run-backup.reg
- 分别检查 HKCU 和 HKLM\Software\Microsoft\Windows\CurrentVersion\Run 两处
- 只删已卸载软件留下的项;数值指向不存在的 exe 路径的,一律可疑
- 顺带看 RunOnce 和 HKLM\Software\Wow6432Node\Microsoft\Windows\CurrentVersion\Run(64 位系统里 32 位程序的位置)
- 重启验证;删错了就双击 D:\run-backup.reg 导回还原
方法4 清理指向不存在程序的残留服务
服务比启动项更隐蔽,它不在任务管理器的启动列表里露面,路径失效一样会在关机时触发报错。查之前记住一条:C:\Windows\System32 下的系统服务不要动。
判断方法和 Run 项一样,看 ImagePath 指向的 exe 是否还在硬盘上,路径整段指向已卸载目录的才算残留。
操作步骤
- regedit 定位 HKLM\SYSTEM\CurrentControlSet\Services,逐个看 ImagePath 指向的 exe 是否还在
- 管理员身份打开命令提示符:sc query type= service state= all,找 STOPPED 且路径不存在的服务
- 先备份:reg export "HKLM\SYSTEM\CurrentControlSet\Services\服务名" D:\svc-backup.reg
- 确认无用后执行 sc stop 服务名,再执行 sc delete 服务名
- System32 下的系统服务不要删,误删可能导致开不了机
方法5 用 sfc、DISM 和系统还原点兜底
清完启动项和服务还弹窗,多半是系统文件被更新或某些软件替换过,交给系统自带的修复命令处理。sfc 和 DISM 都是只读性质的修复,不会动你的文档和照片。
操作步骤
- 管理员身份打开命令提示符,执行 sfc /scannow,等进度到 100% 看是否提示已修复受保护文件
- sfc 无效再跑 DISM /Online /Cleanup-Image /RestoreHealth,跑完重跑一次 sfc /scannow
- 把事件查看器里记下的错误模块名,对照 C:\Windows\System32 下的同名 dll 判断是否被替换过
- 仍然弹窗就用 msconfig 做干净启动,逐个排除第三方服务
- 最后用系统还原点回到还没出现弹窗的那个时间点
如果硬盘有坏道,或者系统盘出现 CRC 错误导致文件读不出来,先备份重要数据再动手,这类硬件问题修复命令处理不了。
常见问题
关机时老是弹出程序结束怎么办?
先记下弹窗里的程序名,在任务管理器把它对应的启动项禁用;还弹就翻事件查看器拿到出错模块路径,再清 Run 项和失效服务;手改没把握,用软领DLL系统修复扫一遍注册表和残留键值。
注册表修复工具 win11 上能用吗?
能用。Windows 11 的 Run、RunOnce、Services 键位置和 Windows 10 一致,regedit、sc、sfc 这些命令也都还在,步骤照做就行。
删 Run 启动项之前怎么备份注册表?
在 regedit 里选中对应键,右键导出成一个 .reg 文件保存到 D 盘;或者直接在命令行执行 reg export "HKCU\Software\Microsoft\Windows\CurrentVersion\Run" D:\run-backup.reg,删错了双击这个文件导回。
关机蓝屏 0x0000007B 和弹程序结束是一回事吗?
不一样。0x0000007B 是 INACCESSIBLE_BOOT_DEVICE,多数指向硬盘控制器驱动缺失,或者 BIOS 里 SATA 模式被改过,要在那台机器的磁盘模式上找原因,跟残留启动项这条线分开排查。
sc delete 删服务提示拒绝访问怎么处理?
用管理员身份打开命令提示符,确认服务名没写错;服务还在运行就先 sc stop 服务名 再删。系统自带的服务删不掉属于正常保护,不要强删。
推荐阅读
VC++ 2015 运行库的关机弹窗怎么排查,从日志定位到运行库修复
相关推荐

提示