某些上下文菜单打开较慢


0

从Windows 95到Windows 8 Release Preview,我使用的每个Windows版本都是这种情况。而且不只是在我的电脑上,在其他电脑上 - 我相信你已经注意到了这一点。

当您右键单击文件,桌面或文件夹时,为什么“新”子菜单显示的时间比任何其他基于系统的菜单要长?

据我所知,它可能与根据“新建”菜单中应显示的列表确定要显示的图标有关,但仍然 - 有其他子菜单具有相同的功能,但仍然是即时显示的。

enter image description here


你有一个“其他子菜单具有相同的功能,但瞬间出现”的例子。
Rowland Shaw

1
我总是设置所有的实例 MenuShowDelay 在注册表中 0 在任何我能注意到的地方都没有延迟! :)
Karan

是的,我刚刚通过PC重新格式化,所以我不会上传新的照片,因为我还没有重新安装所有的东西, 一个很好的例子是TortoiseSVN或TortoiseHG或其他所谓的;菜单上有很多项目!
Arrow

1
请注意,对于某些人来说,延迟0可能太快,但我更喜欢它。您还可以使用类似的方法从“新建”菜单中禁用/删除所有不需要的项目 ShellMenuNew
Karan

1
主要的 MenuShowDelay 设置在 HKEY_CURRENT_USER\Control Panel\Desktop。在HKEY_USERS下也有几个实例,我想这会因机器而异。如果改变所有这些绝对 没有 完全不同,这真的很奇怪。如果右键单击文件夹内会发生什么?不要了 查看,排序依据,分组依据,分享 子菜单打开了 许多 现在(几乎是瞬间)比以前更快?
Karan

Answers:


0

那些“其他子菜单”根本没有相同的功能。那些其他菜单都是静态设计的,而New子菜单是动态生成的。

这意味着Tortoise SVN已经提前确定了该菜单上应该有哪些选项,以及需要从这些菜单选项中调用所有图像和文本及功能的Windows。

另一方面,新菜单必须 扫描注册表 要找出哪些项目需要在“新建”菜单中有一个选项,它必须转到磁盘才能找到这些项目的图标,并且需要找出当有人点击这些项目时要做什么。问题是,每次查看该菜单时都必须执行此操作,因为如果您安装了一个程序,那么您可能希望在任何随机时间都能在该列表中显示新项目。

基本上这些菜单不一样,他们正在处理两组不同的假设。一个是静态的,很少改变,另一个是动态的,可以在程序想要的任何时候改变。磁盘缓存可以使“新建”菜单快速进行,但这并不能弥补它在向您显示列表之前需要执行的事实。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.