如何在Windows 10中批量更改文件夹图标?

如何在Windows 10中批量更改文件夹图标?

我有一个包含 10 个文件夹的文件夹,我想将每个文件夹更改为不同的图标。每个图标都已在另一个文件夹中制作。(每个文件夹将具有不同的图标)

我该如何自动化或批量处理这项任务,以免我不得不单独执行。因为我将要处理多套图标。

答案1

虽然已经晚了三年,但我们还是开始了

您可以通过以下方式手动批量更改文件夹的图标

  • 对文件夹应用只读属性。
  • 对文件夹内的desktop.ini 文件应用只读属性。
  • Desktop.ini 应该正确引用我们想要的图标。

步骤 1:激活 POWERSHELL 并创建 POWERSHELL 脚本

使用“以管理员身份运行”选项启动 Windows PowerShell。只有计算机上的管理员组成员才能更改执行策略。

输入以下命令启用运行未签名的脚本:

set-executionpolicy remotesigned

在记事本中复制此代码并将文件保存为 script.ps1,保存在目录 D:\icons\ 中

<# copy desktop.ini recursively #>
Get-ChildItem -Recurse -Directory|
    foreach { copy "D:\Icons\desktop.ini" $_.FullName}

<# set folder attribute readonly recursively #>
Get-ChildItem -Recurse -Directory|
    foreach {$_.Attributes = 'readonly'}

<# set attribute readonly for desktop.ini recursively #>
Get-ChildItem -Recurse -include *.ini|
    foreach {$_.Attributes = 'readonly,hidden'}

<# set attribute hidden for folder.ico recursively #>
Get-ChildItem -Recurse -include *.ico|
    foreach {$_.Attributes = 'hidden'}

在记事本中复制此代码并将文件保存为目录 D:\icons\ 中的 enable_icons.bat

@ECHO OFF
PowerShell.exe -Command "D:\icons\script.ps1"
PAUSE

步骤 2:创建 DESKTOP.INI 文件

在记事本中复制此代码并将文件保存为目录 D:\icons\ 中的 DESKTOP.INI

[.ShellClassInfo]
IconResource=folder.ico,0
[ViewState]
Mode=
Vid=
FolderType=Generic

现在在目录 D:\icons\ 中我们应该有 3 个文件

  • 桌面配置文件
  • 启用图标
  • 脚本.ps1

步骤 3:发送到文件夹

将 enable_icons.bat 复制到 sendto 文件夹

使用其中任何一个来访问它

c:\users\[username]\AppData\Roaming\Microsoft\Windows\SendTo

或者

%AppData%\Microsoft\Windows\SendTo

最后一步:如何申请

  1. 在每个文件夹中,放置您的图标并将其重命名为folder.ico
  2. 选择 [父文件夹] 中的 [要更改其图标的文件夹] > 右键单击​​ > 发送到 > 启用图标

如果你已经拥有仅有的 每个文件夹内的图标文件使用此批处理脚本对它们全部重命名。

在记事本中复制此代码并将文件另存为 rename_icons.bat,放在与 [父文件夹]

@echo off
setlocal enabledelayedexpansion
FOR /r %%A IN (*.ico) DO (
echo.
echo "%%A"
REN "%%~fA" "folder.ico")

pause 

现在将[父文件夹]拖到rename_icons.bat

。 。 。 。 非常重要的提示:

这是非常强大的,它可能会影响邻近的文件夹

(换句话说,它工作得很好,但有些更聪明的人可以修复它)

暂时确保 [父文件夹] 是目录中唯一的文件夹

答案2

您要应用到文件夹的实际图标在哪里?

如果它们不在.dll文件中,您可以使用 30 天免费试用版创建一个艾科外汇或者一些类似的软件。

每个文件夹中都有一个名为 的隐藏文件desktop.ini。它们的文件系统属性为 S(系统)、A(准备存档的文件)以及 H(隐藏)。您可以通过在资源管理器窗口中添加“属性”列来查看这些属性。

标准黄色文件夹中的文件desktop.ini如下所示:

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

desktop.ini您 [已] 自定义的文件夹中的文件中,重要的行是,它指向您创建的文件IconFile的位置,以及指向文件内特定彩色图标的行。icon.dllIconIndex

您将相同的文件复制到每个要自定义的文件夹,但值IconIndex会有所不同,具体取决于颜色。确保它们具有 HSA 属性。

相关内容