前言

Windows 系统中有一些非常特别的文件夹,比如 桌面下载文档图片音乐视频 等。

这些文件夹的特殊之处在于,它们是有翻译和图标的,在资源管理器中既可以用中文路径访问又可以用英文路径访问。

但是,有时候,我们会误删这些文件夹,误删后即使创建同名文件夹也没法恢复其原始样貌。

↑ 这里已经创建了同名文件夹,并检查确认了系统的位置配置正确指向了它,虽然各种软件都能正常识别它,但它还是失去了翻译和图标,也不再能通过中文路径访问了。

虽然失去这层皮肤不会影响任何功能,但总是有些不舒服,所以,有没有办法能够恢复这层带有翻译和图标的皮肤?

原理

事实上,这层皮肤完全是由资源管理器维护的,文件系统上只存储了原始的英文路径,其它软件也并不能通过中文路径访问它们。

资源管理器维护这些信息的方式也非常简单——通过 Desktop.ini

↑ 可以看到,Desktop.ini 中直接存储了该文件夹对应的图标和本地化信息。

那么,是不是在我们重新创建的文件夹中,手动创建这个 Desktop.ini 文件,就能恢复其原始皮肤呢?

答案是否定的。

Desktop.ini 只对包含“只读位”的文件夹生效,而且 ini 本身也必须是隐藏的系统文件。

所以,要怎么把文件夹变成这个样子?

  • 首先,创建普通文件夹。
  • 使用 powershell 执行 attrib +r <文件夹路径> ,标记只读位。
  • 在文件夹中创建 Desktop.ini 文件,写入合适的内容。
  • 使用 powershell 执行 attrib +s +h <Desktop.ini 路径> ,标记为隐藏的系统文件。
  • 如有需要,重启一下资源管理器。

好了,皮肤回来了。

此外,我还搜集了一些特殊文件夹的 Desktop.ini 内容,附在文章末尾,方便有需要的人。

恢复奇巧

其实,手动这么恢复实在是有点太麻烦了。我们完全可以用自带的 Windows 沙盒开个干净的虚拟机,然后把所需的特殊文件夹复制出来。
复制的过程本身就会保留文件(夹)的各项属性,因此皮肤是可以正常被恢复和应用的。

附录:各个特殊文件夹的 Desktop.ini 内容

下载

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21798
IconResource=%SystemRoot%\system32\imageres.dll,-184

保存的游戏

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21814
IconResource=%SystemRoot%\system32\imageres.dll,-186

图片

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21779
InfoTip=@%SystemRoot%\system32\shell32.dll,-12688
IconResource=%SystemRoot%\system32\imageres.dll,-113
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-236

搜索

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-9031
IconResource=%SystemRoot%\system32\imageres.dll,-18
[LocalizedFileNames]
Indexed [email protected],-32820
[email protected],-32822

收藏夹

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21796
IconResource=%SystemRoot%\system32\imageres.dll,-115
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-173

文档

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21770
IconResource=%SystemRoot%\system32\imageres.dll,-112
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-235

桌面

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21769
IconResource=%SystemRoot%\system32\imageres.dll,-183

联系人

[.ShellClassInfo]
LocalizedResourceName=@%CommonProgramFiles%\system\wab32res.dll,-10100
InfoTip=@%CommonProgramFiles%\system\wab32res.dll,-10200
IconResource=%SystemRoot%\system32\imageres.dll,-181

视频

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21791
InfoTip=@%SystemRoot%\system32\shell32.dll,-12690
IconResource=%SystemRoot%\system32\imageres.dll,-189
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-238

链接

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21810
IconResource=%SystemRoot%\system32\imageres.dll,-185
DefaultDropEffect=4
[LocalizedFileNames]
[email protected],-21769
[email protected],-21798

音乐

[.ShellClassInfo]
LocalizedResourceName=@%SystemRoot%\system32\shell32.dll,-21790
InfoTip=@%SystemRoot%\system32\shell32.dll,-12689
IconResource=%SystemRoot%\system32\imageres.dll,-108
IconFile=%SystemRoot%\system32\shell32.dll
IconIndex=-237

参考资料