快速答案
可以,你可以在 Windows 11 或 10 里查看最近关闭的应用,但也不完全是那么回事。不过,某种程度上你可以借可靠性监视器、事件查看器,或 NirSoft 的 LastActivityView 这类第三方工具做到。Windows 本身并不提供直接的“最近关闭的应用”历史记录;但这些方法能让你有效地追踪应用关闭,详细程度和复杂度各不相同。
和智能手机上那个方便的“最近应用”按钮不同,Windows 11 和 Windows 10 并不会给你一份刚刚关掉的程序清单。微软设计这套操作系统时考虑的重点不一样,更关注当前进程而非历史记录。
尽管如此,我们很多人可能还是想知道哪些应用最近被关掉了,尤其是在你用一台共享 PC 或笔记本的时候。又或者你正在排查系统崩溃,需要知道在崩掉之前跑了些什么。别担心——有好几个聪明的变通办法和实用工具,能帮你有效地追踪这类信息。
这么多年来排查 Windows 问题、管理系统的过程中,我发现了好几种识别最近关闭应用的方法,从可靠性监视器和事件查看器这类 Windows 内置工具,到 NirSoft 的 LastActivityView 这类强大的第三方方案。本文我们就来学学,在 Windows 里追踪最近关闭的应用,其实可能相当棘手。
方法 1:用 Windows 可靠性监视器(用于排查问题)
可靠性监视器大概是最友好的内置工具,用来查看应用历史。它主要是设计来追踪系统稳定性的,同时也会记录应用何时停止工作或崩溃。
如何访问可靠性监视器:
- 按 Windows + R 打开运行对话框
- 输入
perfmon /rel,按回车 - 等几秒钟,让可靠性历史加载出来

界面会显示一个时间线视图,包含每日的可靠性评分,以及用图标标注的各种事件。找黄色警告三角和红色 X 标记——这些往往指示着应用关闭,尤其是意外关闭。
解读时间线:
这张图展示了你系统随时间的稳定性,每天用一个竖列表示。点任意一天,就能在下面看到详细事件:
- 应用程序故障(崩溃或停止响应的程序)
- Windows 故障(系统级问题)
- 其他故障(驱动问题等)
- 警告(非关键事件)
- 信息事件(成功的更新、安装)
优缺点:
优点:
- 易用,不需要技术知识
- 可视化时间线让规律一目了然
- 显示错误消息等额外上下文
- 无需安装
缺点:
- 只可靠地显示崩溃和错误,不显示正常关闭
- 数据限于最近 30 天
- 可能捕捉不到所有应用事件
- 侧重于问题,而非日常使用
方法 2:用事件查看器做详细追踪
要做更全面的应用追踪,事件查看器能提供关于进程启动和停止的细粒度细节。这个方法需要更多技术功底,但提供的信息比可靠性监视器多得多。
分步说明:
- 右键点开始按钮,选事件查看器

- 依次进入 Windows 日志 → 应用程序
- 找事件 ID 与应用崩溃或应用挂起相关的事件。

- 要做更详细的进程追踪,去 应用程序和服务日志 → Microsoft → Windows → AppModel-Runtime。

创建自定义视图:
要过滤掉噪音、聚焦于应用关闭:
- 点右侧面板的创建自定义视图
- 选按日志,选“应用程序”
- 在事件 ID 里输入:1000、1001、1002
- 给你的视图命名为“最近关闭的应用”
- 点确定保存
现在你就有了一个过滤后的视图,只显示应用终止事件,包括时间戳、进程名和关闭原因。
进阶过滤技巧:
你也可以用 PowerShell 更高效地查询事件查看器:
Get-EventLog -LogName Application -EntryType Error,Warning |
Where-Object {$_.TimeGenerated -gt (Get-Date).AddHours(-24)} |
Select-Object TimeGenerated, Source, Message
这条命令显示最近 24 小时的应用事件。

优缺点:
优点:
- 信息极其详细
- 能追踪正常和异常关闭
- 历史数据可回溯数周到数月
- 可过滤、可搜索
缺点:
- 对新手学习曲线陡峭
- 不做适当过滤会信息过载
- 需要理解 Windows 事件 ID
- 初始设置耗时
方法 3:任务管理器的“应用历史记录”标签页
任务管理器里有个常被忽略的功能,会随时间追踪应用的资源使用情况。虽然它不明确显示应用何时关闭,但提供了有价值的使用统计,可用来推断近期活动。
访问应用历史记录:
- 按 Ctrl + Shift + Esc 打开任务管理器
- 如果是简化视图,点详细信息
- 进入应用历史记录标签页
你会看到一列应用,列为:
- CPU 时间
- 网络使用量
- 按流量计费的网络使用量
- 磁贴更新

重要限制:
这个功能主要追踪 Microsoft Store(UWP)应用,而非传统桌面程序。显示的数据代表自上次重置以来的累计使用量,而不是具体某次会话或关闭时间。要重置统计,点“删除使用情况历史记录”,但注意这会抹掉所有历史数据。
这个方法什么时候最管用:
尽管有局限,任务管理器的应用历史记录在以下场景仍很有帮助:
- 监控 Store 应用使用模式
- 找出吃资源的应用
- 随时间追踪网络消耗
- 在不装额外软件的情况下快速查看
方法 4:Windows 时间线(Timeline)与最近文件
Windows 10 以前带有一个功能全面的活动历史记录功能,支持时间线,但 Windows 11 在近期更新中大幅改动甚至移除了这一功能。微软从 2021 年起就在逐步淘汰时间线功能。不过,通过其他内置特性,仍有办法追踪最近应用使用情况。
活动历史记录怎么了:
在 Windows 11 的 22H2 版及之后,微软从隐私部分移除了活动历史记录设置。时间线功能(Windows + Tab)现在只显示当前打开的窗口和虚拟桌面,不显示历史活动。如果你用的是较老的 Windows 10 版本或早期 Windows 11 构建,你可能仍能看到这些选项;不过,它们在当前版本里已经没有。
替代方案:用最近文件和跳转列表:
替代活动历史记录,你仍可以通过这些方式追踪最近用过的应用:
- 文件资源管理器的最近文件:
- 打开文件资源管理器
- 点左侧边栏的“快速访问”
- 看“最近使用的文件”,查看最近访问过的文档
- 右键点任意文件,看“打开文件位置”,这往往能暴露用过的应用
- 用运行命令
- 我们可以用运行框命令打开最近文件或最近使用项
- 按
Win + R键,输入——shell:recent - 这会打开一个文件夹,里面是 Windows 上最近使用项的快捷方式图标

- 任务栏上的跳转列表:
- 右键点任务栏上任意一个已固定的应用
- 查看该应用里最近打开的文件
- 这对 Chrome、Word、Excel 这类应用都有效

- 开始菜单的“推荐”区域:
- 打开开始菜单
- 找“推荐”部分(如果已启用)
- 显示最近使用的应用和文件
- 可在 设置 → 个性化 → 开始 里启用

给 Windows 10 用户:
如果你还在 Windows 10 上,活动历史记录可能仍然可用:
- 进入 设置 → 隐私 → 活动历史记录
- 启用“在此设备上存储我的活动历史记录”
- 用 Windows + Tab 查看时间线
不过,微软已宣布这项功能最终也会从 Windows 10 上移除。
追踪最近关闭应用的第三方工具
当 Windows 内置功能不够用时,第三方工具提供了更专门的追踪能力。以下是我这些年测过的最可靠的几个选择。
NirSoft LastActivityView
LastActivityView 在追踪应用使用方面是最直接的方案。这款免费、便携的工具会生成程序执行的详细日志,无需安装。
主要功能:
- 显示应用精确的打开和关闭时间
- 显示可执行文件路径和说明
- 支持多种格式导出报告
- 不运行时对系统零影响
- 完全免费、无广告
如何使用:
- 从 NirSoft 官网下载 LastActivityView
- 把 ZIP 文件解压到任意文件夹
- 以管理员身份运行 LastActivityView.exe
- 工具会立刻显示最近的应用活动

界面显示的列有进程名、打开时间、关闭时间、持续时长和完整路径。你可以按任意列排序,并把数据导出成 CSV、HTML 或 XML 格式供进一步分析。
Process Monitor(微软 Sysinternals)
给高级用户和 IT 从业者,Process Monitor 提供对所有系统活动的实时监控,包括进程的创建和终止。
配置 Process Monitor:
- 从微软官方 Sysinternals 页面下载
- 从下载的压缩文件里解压并运行 Procmon.exe(管理员身份)
- 点“只显示进程和线程活动”
- 启用“丢弃已过滤事件”以缩小日志体积
创建有效的过滤器:
- 按操作过滤:进程创建、进程退出
- 排除系统进程以减少噪音
- 为不同监控场景保存过滤器组
Process Monitor 什么都抓,这意味着如果一直开着,日志文件会巨大。把它用于有针对性的监控时段,而不是持续追踪。
自己动手:用 PowerShell 脚本定制日志
要完全掌控应用追踪,你可以用 PowerShell 自己做一套日志系统。下面这个脚本是我开发并打磨过的,用来追踪进程的启动和停止:
# 应用活动记录脚本
# 保存到 C:\AppLogs\activity_log.txt
$logPath = "C:\AppLogs"
$logFile = "$logPath\activity_log.txt"
# 如果日志目录不存在则创建
if (!(Test-Path $logPath)) {
New-Item -ItemType Directory -Path $logPath
}
# 写入带时间戳日志条目的函数
function Write-Log {
param($Message)
$timestamp = Get-Date -Format "yyyy-MM-dd HH:mm:ss"
"$timestamp - $Message" | Out-File -FilePath $logFile -Append
}
# 监控进程创建事件
Register-WmiEvent -Query "SELECT * FROM Win32_ProcessStartTrace" -Action {
$processName = $event.SourceEventArgs.NewEvent.ProcessName
Write-Log "STARTED: $processName"
}
# 监控进程终止事件
Register-WmiEvent -Query "SELECT * FROM Win32_ProcessStopTrace" -Action {
$processName = $event.SourceEventArgs.NewEvent.ProcessName
Write-Log "STOPPED: $processName"
}
Write-Host "应用监控已启动。按 Ctrl+C 停止。"
Write-Log "监控会话已开始"
# 保持脚本运行
while ($true) {
Start-Sleep -Seconds 60
}
安装脚本:
- 把脚本复制到一个扩展名为 .ps1 的文件里,例如——
AppLogger.ps1 - 以管理员身份运行 PowerShell
- 执行:
Set-ExecutionPolicy RemoteSigned(如需要) - 运行脚本:
.\AppLogger.ps1
脚本会生成一个文本日志,记录每个应用的启动和停止时间戳。你可以修改它来过滤特定应用、发送邮件告警,或与其他系统集成。
定制思路:
- 为特定应用添加过滤器
- 包含进程 ID 和父进程信息
- 在特定应用关闭时发送通知
- 创建每日日志轮转
- 导出到数据库做长期分析
对比表:内置工具 vs 第三方工具
| 方法 | 易用性 | 显示正常关闭 | 实时追踪 | 历史数据 | 最适合 |
|---|---|---|---|---|---|
| 可靠性监视器 | 非常简单 | 主要是崩溃/错误 | 否 | 30 天 | 排查崩溃的新手 |
| 事件查看器 | 中等 | 是(需配置) | 否 | 数月 | 需要细节的技术用户 |
| 任务管理器 | 简单 | 信息有限 | 否 | 想要简单历史的普通用户 | 监控 Store 应用 |
| 活动历史记录 | 简单 | 部分 | 否 | 不定 | 跨设备追踪 |
| NirSoft LastActivityView | 简单 | 是 | 否 | 取决于日志 | 想要简单历史的普通用户 |
| Process Monitor | 进阶 | 是 | 是 | 仅当前会话 | IT 从业者与调试 |
| PowerShell 脚本 | 中等 | 是 | 是 | 无限制 | 自定义日志需求 |
常见问题
我能直接在 Windows 11 里看到最近关闭的应用吗?
很遗憾,和 Android 或 iOS 不同,Windows 11 不提供内置的“最近关闭的应用”功能。这套操作系统聚焦于当前运行的进程,而不维护一份随时可查的已关闭应用历史。不过,借助可靠性监视器这类工具或 LastActivityView 这类第三方实用程序,你可以在不同详细程度上有效地追踪这类信息。
Windows 会保留我关闭的所有应用的历史吗?
Windows 确实会在事件查看器里记录各种应用事件,包括某些关闭,尤其是应用崩溃或挂起时。不过它不会维护一份全面的、易于访问的、涵盖每个正常关闭应用的表。系统优先记录错误和重大事件,而非例行应用关闭。要做完整追踪,你需要第三方工具或自定义脚本。
有没有办法在重启后自动恢复关闭的应用?
有,Windows 10 和 11 都包含一个功能,允许你在重启后恢复之前打开的应用。去 设置 → 账户 → 登录选项 启用它,然后打开“自动保存我的可重启应用,并在重新登录后重启它们”。这主要用于 UWP 应用,以及部分支持 Windows 重启管理器的现代桌面应用。传统程序可能需要第三方会话管理器才能实现类似功能。
内置方法和第三方工具哪个更好?
答案取决于你的具体需求和技术熟练度。可靠性监视器这类内置方法,对偶尔需要查看什么崩溃了或意外关闭了的普通用户来说够用。它们免费、安全、无需安装。当你需要全面追踪、实时监控或详细分析时,第三方工具更胜一筹。如果你经常因工作、排查或效率追踪需要这类信息,值得考虑。
我能在某个特定应用关闭时收到通知吗?
虽然 Windows 原生不支持关闭通知,但你可以通过 Process Monitor 的邮件告警,或写一个带通知能力的自定义 PowerShell 脚本来实现。有些第三方监控工具,比如 Process Lasso,也提供基于规则的操作,包括在特定进程终止时发通知。前面给的 PowerShell 脚本可以改成在特定应用关闭时通过 Windows 通知或邮件发送告警。
结语
在 Windows 11 和 Windows 10 里追踪最近关闭的应用需要一点创造力,因为微软没把这功能直接做进操作系统。不过,如我们所探讨的,存在多种解决方案,能满足不同需求和技能水平。
对新手和普通用户, 我建议从 NirSoft 的 LastActivityView 起步。它免费、无需安装,恰好提供大多数人需要的东西——一份应用打开和关闭时间的简单清单。学习曲线几乎不存在,也不影响系统性能。
高级用户和 IT 从业者 应当考虑在排查期间用 Process Monitor 做实时追踪,再用 事件查看器做历史调查。这些工具提供了严肃系统分析所需的细粒度细节,尽管要用好它们需要更多技术知识。
想要折中方案的人,可能会觉得 PowerShell 脚本这条路最理想。它在没有企业级工具那种复杂度的前提下提供了自定义能力,让你能精确地按自己的需求裁剪它。
文中的对比表有一行错位——「NirSoft LastActivityView」那行的“最适合”列写成了「想要简单历史的普通用户」,而「任务管理器」那行的“历史数据”列写成了「想要简单历史的普通用户」。按上下文,「任务管理器」的历史数据应为「当前会话(不保留)」。已按语义保留,读的时候留意这张表本身有点小混乱。另外,NirSoft 的 LastActivityView 确实好用,但从 nirsoft.net 官网下载,别用第三方站。