如何重置/删除 Windows 10 任务栏通知区域选项

近期清理了一下 Windows 10,卸载了一些不用的程序。然而在 任务栏设置 > 选择哪些图标在任务栏上 发现很多已卸载程序的选项,强迫症患者怎能容忍这种情况发生,所以开始寻找解决办法。

任务栏通知选项缓存在注册表用户配置中:

HKEY_CURRENT_USER\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify

里面有两项:IconStreamsPastIconsStream ,它们就是罪魁祸首!因为通知选项缓存以二进制格式存在注册表里,程序卸载的时候也没有办法删除单条记录,只能手动全部删除,不知道微软为什么这么设计。

自己改了一个脚本,复制下来保存到文本文件中,把文件名改为 Reset_Notification_Cache.bat (注意文件名后缀)。运行前保存关闭所有其它程序,然后双击运行就可以了。(安全软件可能会报警,因为该脚本试图修改注册表,放行通过。)

:: Created by Alvin Hu

@echo off

set regPath=HKCU\Software\Classes\Local Settings\Software\Microsoft\Windows\CurrentVersion\TrayNotify
set regKey1=IconStreams
set regKey2=PastIconsStream

echo.
echo The Explorer process must be temporarily termidated before deleting notification area icons cache.
echo.
echo Please SAVE ALL OPEN WORK before continuing.
echo.
pause

echo.
taskkill /IM explorer.exe /F
echo.
echo The Explorer process hase been termidated.
echo.
FOR /F "tokens=*" %%a in ('Reg Query "%regpath%" /v %regkey1% ^| find /i "%regkey1%"') do goto IconStreams

:IconStreams
reg delete "%regpath%" /f /v "%regkey1%"
echo.
echo Registry key "IconStreams" has been deleted.
echo.
FOR /F "tokens=*" %%a in ('Reg Query "%regpath%" /v %regkey2% ^| find /i "%regkey2%"') do goto PastIconsStream
goto restart

:PastIconsStream
reg delete "%regpath%" /f /v "%regkey2%"
echo.
echo Registry key "PastIconsStream" has been deleted.
echo.

:restart
echo.
echo You will need to restart the PC to finish resetting your notification area icons.
echo.
CHOICE /C:YN /M "Do you want to restart the PC now?"
IF ERRORLEVEL 2 goto no
IF ERRORLEVEL 1 goto yes

:no
echo.
echo Restarting explorer...
echo.
echo Please remember to restart the PC later to finish resetting your notification area icons.
echo.
start explorer.exe
pause
exit /B

:yes
shutdown /r /f /t 00

运行截图:

图片里有错误,那是因为 Windows 10 没有 PastIconsStream 这项。

执行完了重启系统,大功告成!这个世界又恢复干净了!

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 摘抄:http://blog.163.com/sbtaot/blog/static/128303760200982...
    cqlina阅读 4,345评论 0 5
  • ORA-00001: 违反唯一约束条件 (.) 错误说明:当在唯一索引所对应的列上键入重复值时,会触发此异常。 O...
    我想起个好名字阅读 5,446评论 0 9
  • Swift1> Swift和OC的区别1.1> Swift没有地址/指针的概念1.2> 泛型1.3> 类型严谨 对...
    cosWriter阅读 11,142评论 1 32
  • 今天是开营的第一天,迎来了孩子们的到来,到了基地教官和生活老师等着孩子们,很快,带着孩子们来到了宿舍,在分上下铺的...
    娶一帅气的昵称吧阅读 234评论 1 0
  • 在某些情况下,您可能希望从多个环境存储库中提取配置数据。为此,只需在配置服务器的应用程序属性或YAML文件中启用多...
    嘻嘻哈哈1155阅读 304评论 0 1