如何告诉Windows资源管理器不要在某个文件夹中请求文件详细信息和缩略图?

Eug*_*its 8 explorer windows-explorer windows-shell

有没有办法(通过shell扩展或注册表设置)告诉Windows资源管理器它不应该读取正在显示的文件夹中的文件,以便提取元数据或创建缩略图?

问题是当用户导航到该文件夹​​时,Windows资源管理器会尝试读取该文件夹中的所有文件并从中提取某些元数据.如果介质很慢,则需要很长时间并导致文件系统上出现不必要的负载.当读取整个图形文件时,在缩略图的情况下尤其如此.

我正在寻找在代码中执行此操作(限制资源管理器)的方法,因此"不使用缩略图模式"不是可接受的答案:).

更新:不幸的是,每个用户的设置不起作用,因为我们作为磁盘提供商只能处理我们自己的磁盘(并且用户可能希望对常规磁盘和虚拟磁盘进行单独设置).我相信必须有一些方法来"解释"驱动器运行缓慢的操作系统.

也许我们需要处理驱动程序级别的一些IRP来告诉操作系统介质是否很慢?

Ste*_*pel 6

有没有办法(通过shell扩展或注册表设置)告诉Windows资源管理器它不应该读取 正在显示的文件夹中的文件,以便提取元数据或创建缩略图?

并非我知道,但根据您概述的用例详细信息的优先级,可能还有两个选项可用于估算所需结果:

通过团体政策

请注意,这必要扩展/详细说明Freds答案的网络文件夹相关方面,您在更新中已将其解雇; 但是,您声称能够部署外壳扩展或注册表设置,并且以下两个组策略只需通过管理方式执行后者:

User Configuration -> Administrative Templates -> Windows Components ->  Windows Explorer:

Turn off the display of thumbnails and only display icons **on network folders**
Turns off the caching of thumbnails in hidden thumbs.db files.
Run Code Online (Sandbox Code Playgroud)

这归结为以下注册表设置:

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer]
"DisableThumbnailsOnNetworkFolders"=dword:00000001
"DisableThumbsDBOnNetworkFolders"=dword:00000001
Run Code Online (Sandbox Code Playgroud)

当然,这仍然不是每个文件夹,但至少限于网络文件夹,并忽略常规磁盘和虚拟磁盘.

通过hackish解决方法

鉴于你的说法,我们的磁盘供应商只能对付我们自己的盘有可能是hackish的解决方法,但恐怕缺乏最后一英里(由我自己未经测试).

从Chris W. Reas开始回答我如何在Windows Vista和Windows 7中抑制那些讨厌的Thumbs.db文件?:

另外值得一提的是:在Vista和Windows 7中,Thumbs.db仅适用于网络文件夹.对于本地文件夹,Vista和Windows 7将缩略图缓存信息保存到" %userprofile%\ AppData\Local\Microsoft\Windows\Explorer " 的本地文件夹中的数据库

从那里继续,威尔声称以下潜在巧妙的解决工作每个文件夹基础上:

转到驱动器并创建一个名为thumbs.db的文件(在记事本或任何内容中),然后为每个人(包括SYSTEM)更改文件的权限以拒绝所有.

不幸的是,除了在每个文件夹中创建虚拟thumbs.db的自动化要求之外,结果取决于资源管理器将如何对无法访问的文件做出反应 - 因为缓存是可选的,因为按照组策略,它可能显示缩略图而不缓存它们,反过来使带宽问题更严重......

祝好运!


Jef*_*ado 1

我不确定您是否可以禁用某些文件夹的缩略图生成/显示,但本文讨论了一个可以通过上下文菜单快速禁用它的脚本。

该脚本修改注册表项中的值HKCU\Software\Microsoft\Windows\CurrentVersion\Explorer\Advanced\。我想您可以在其他元数据的该键中找到类似的内容。 ShowInfoTip听起来很有希望。附近其他按键中可能有相关信息。