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

时间:2010-09-21 21:02:17

标签: explorer windows-explorer windows-shell

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

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

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

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

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

4 个答案:

答案 0 :(得分: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.

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

Windows Registry Editor Version 5.00

[HKEY_CURRENT_USER\Software\Policies\Microsoft\Windows\Explorer]
"DisableThumbnailsOnNetworkFolders"=dword:00000001
"DisableThumbsDBOnNetworkFolders"=dword:00000001

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

通过hackish workaround

鉴于您的陈述我们作为磁盘提供商只能处理我们自己的磁盘可能 hackish workaround ,尽管我害怕它没有最后一英里(我自己未经测试)。

从Chris W. Reas自己对How can I suppress those annoying Thumbs.db files in Windows Vista and Windows 7?的答案开始:

  

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

继续,Wil claims the following potentially clever solution基于每个文件夹

  

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

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

祝你好运!

答案 1 :(得分:1)

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

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

答案 2 :(得分:1)

从未在每个文件夹的基础上完成此操作,但如果您想限制每个用户或所有用户的缩略图,您可以使用注册表设置或组策略:http://www.sevenforums.com/tutorials/11738-thumbnail-previews-enable-disable.html

答案 3 :(得分:1)

根据您的需要,这可能是一个完整的非答案,但如何在没有操作系统想要缩略图的文件扩展名的情况下存储文件?称之为file.jpg.abc,它肯定不会读取缩略图。