我可以将自定义图标分配给文件类型

时间:2016-12-12 00:42:18

标签: windows file icons

有没有办法可以将文件类型(如.php,.css,.js)与自定义图标相关联,即使该文件已与某个程序关联。

例如在我的计算机上.php与sublime文本相关联,当我在我的文件系统上遇到.php它显示ST的图标时,有没有办法让它更改为自定义图标,如好醇'大象,但仍然与ST相关联,即当我点击文件时它仍然在ST(==崇高文本)中打开。

1 个答案:

答案 0 :(得分:0)

我知道如何为分配给Notepad ++的文件类型执行此操作。

在Windows 10中,Notepad ++不断劫持您在Notepad ++中打开的文件类型的图标(默认情况下)。打破这种行为是非常困难的,但我终于让它发挥作用了!


制剂

<强> 1。注册表权限
打开Windos注册表,为文件夹HKEY_CLASSES_ROOTHKEY_CURRENT_USER提供足够的“权限”。我不确定自己整个程序成功的最低设置是什么。你必须玩一下这些设置。无论何时在即将到来的过程中收到错误消息,请返回此步骤并增加注册表权限。

<强> 2。制作一些自定义图标
制作一些自定义图标,例如在文件夹C:\ICONS\中。我使用以下网站https://iconverticons.com/online/将256x256 png文件转换为ico文件。

第3。安装Notepad ++
得到Notepad ++。这里没什么特别的。

<强> 4。打开具有管理员权限的终端
在Windows搜索栏中输入cmd。右键单击出现的CMD图标,然后在弹出窗口中选择“以管理员身份运行”。


注册表黑客攻击

免责声明:更改注册表可能会导致Windows安装受损。我已经用最好的意图写下了下面的程序,但如果出现问题我不承担任何责任。
注意:我不建议对.bat文件使用此过程。这是Windows的一个非常重要的文件类型。因此,我不知道如果删除其标准注册表项会发生什么。

以下步骤介绍了如何将您在C:\ICONS\abcfile.ico中创建的自定义图标 - 分配给所有*.abc个文件。

<强> 1。注册表黑客攻击,第一部分
您应添加的第一个注册表项是HKEY_CLASSES_ROOT\.abc。如果此密钥已存在,您可能希望将其删除。使用以下命令删除密钥及其所有子密钥:

> REG DELETE HKEY_CLASSES_ROOT\.abc /f

下图显示了我们将如何(重新)构建此注册表项及其所有子项:

enter image description here

您可以手动执行此操作或运行以下命令:

> REG ADD HKEY_CLASSES_ROOT\.abc /ve /t REG_SZ /d "abc_auto_file"
> REG ADD HKEY_CLASSES_ROOT\.abc /v BrowserFlags /t REG_DWORD /d 0x00000000
> REG ADD HKEY_CLASSES_ROOT\.abc /v EditFlags /t REG_DWORD /d 0x00000000
> REG ADD HKEY_CLASSES_ROOT\.abc /v PerceivedType /t REG_SZ /d "text"
> REG ADD HKEY_CLASSES_ROOT\.abc\DefaultIcon /ve /t REG_SZ /d "C:\ICONS\abcfile.ico,0"

<强> 2。注册表黑客攻击,第二部分
您应添加的第二个注册表项是HKEY_CLASSES_ROOT\abc_auto_file。如果此密钥已存在,您可能希望将其删除。使用以下命令删除密钥及其所有子密钥:

> REG DELETE HKEY_CLASSES_ROOT\abc_auto_file /f

下图显示了我们将如何(重新)构建此注册表项及其所有子项:

enter image description here

您可以手动执行此操作或运行以下命令:

> REG ADD HKEY_CLASSES_ROOT\abc_auto_file /ve /t REG_SZ
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\DefaultIcon /ve /t REG_SZ /d "C:\ICONS\abcfile.ico"
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\shell /ve /t REG_SZ
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\shell\edit /ve /t REG_SZ
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\shell\edit\command /ve /t 
> REG_EXPAND_SZ /d "\"C:\Program Files (x86)\Notepad++\notepad++.exe\" \"^%1\""
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\shell\open /ve /t REG_SZ
> REG ADD HKEY_CLASSES_ROOT\abc_auto_file\shell\open\command /ve /t 
> REG_EXPAND_SZ /d "\"C:\Program Files (x86)\Notepad++\notepad++.exe\" \"^%1\""

第3。注册表黑客攻击,第三部分
您应添加的第二个注册表项是HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc。如果此密钥已存在,您可能希望将其删除。使用以下命令删除密钥及其所有子密钥:

> REG DELETE HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc /f

下图显示了我们将如何(重新)构建此注册表项及其所有子项:

enter image description here

您可以手动执行此操作或运行以下命令:

> REG ADD HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc /ve /t REG_SZ
> REG ADD HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc\OpenWithList /ve /t REG_SZ
> REG ADD HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc\OpenWithProgids /ve /t REG_SZ
> REG ADD HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc\OpenWithProgids /v "C:\Program Files (x86)\Notepad++\notepad++.exe" /t REG_NONE /d 0
> REG ADD HKEY_CURRENT_USER\SOFTWARE\Microsoft\Windows\CurrentVersion\Explorer\FileExts\.abc\OpenWithProgids /v abc_auto_file /t REG_NONE /d 0


刷新图标缓存

以下命令应刷新Windows图标缓存:

> %windir%\system32\ie4uinit.exe -show


将Notepad ++分配给文件类型

我注意到 - 有时 - 只有在将Notepad ++指定为打开文件类型的默认程序后,更改才会生效。 这是怎么做的:

  • 使用给定的文件类型创建文件,例如:myFile.abc
  • 右键单击该文件,然后选择“打开方式”&gt;&gt; “另一个应用程序”
  • 你应该得到一个像enter image description here
  • 这样的弹出窗口
  • 选择Notepad ++作为默认程序


完成

通常情况下,图标已经改变了!并且该特定文件类型的所有文件都将具有自定义图标。默认情况下,它们将在Notepad ++中打开。

也许您应该再次刷新图标缓存:

> %windir%\system32\ie4uinit.exe -show

或重启系统让它生效(虽然我不需要重启)。