概述
IconOverlay,图标覆盖,常用于在文件(夹)上显示状态图标。
问题的关键在于,Windows 支持最多15个 Overlay Icon,而自身就使用了4个,因此只有11个可使用。
查看注册表以下位置可以看到相关项:
HKEY_LOCAL_MACHINE\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\ShellIconOverlayIdentifiers
而它们按字符顺序排列,排在前15个的项是有效的,之后的就失效了。
可见,IconOverlay 是稀缺资源,稀缺必然导致争用。
争用与解决
如果你安装过多使用 Overlay Icon 的应用程序,那么,某天会发现某些状态图标失效了,这说明这些图标被“排挤”到了15名之外。
通常,国外的应用程序一般都还比较温和,比如 TortoiseGit、OneDrive 等等,项名称都是自身名称+序号的形式。而国内的应用程序就比较“无节操”了,一般都是以空格或句点开头,以确保自己的项能排在前列。
因此,如果你安装多过该类型的应用,那么,避免一些状态图标失效的方法跟上述争用的方法原理相同,重命名必要的项名称,使其排入前15。
而我们不必将同一应用的所有状态图标都“启用”,而只需要保留几个重点关注的状态,毕竟11个图标真的不够用,而一些应用程序一用就是好几个(比如 TortoiseGit 用了9个T_T)。