任何使用过 Vista 和 XP 并且喜欢大多数时候隐藏桌面项目的人都会注意到,这种切换在 XP 中非常非常慢,而在 Vista 中几乎是即时的。
为什么 XP 下速度这么慢?有什么简单的原因吗?还是操作系统本身的问题?
答案1
更改桌面图标的可见性会向所有程序广播一条特殊消息(WM_SETTINGCHANGE带有 LPARAM 的“ShellState”),告诉它们刷新缓存的系统设置——这是一项相当繁重的工作。延迟可能是由 XP Explorer 中编写不当的部分造成的,而这些部分已在 Vista 中进行了优化,运行速度更快。
更糟糕的是,在 XP 中 WM_SETTINGCHANGE 消息被不必要地发送了两次。