我如何更改文件类型图标.url
?
我用过默认程序编辑器来更改它,但它不起作用。这让我最初认为该程序在 Windows 8 上不起作用,但它实际上适用于其他文件类型,例如.txt
。
它提供了导出文件.reg
而不是直接编辑注册表的选项,所以我知道它在做什么:
Windows Registry Editor Version 5.00
; Created with Default Programs Editor
; http://defaultprogramseditor.com/
; Edit File Type Icon
[HKEY_CURRENT_USER\Software\Classes\IE.AssocFile.URL\DefaultIcon]
@="D:\\Icons\\Chrome URL.ico,0"
为什么它不适用于这种文件类型?
答案1
.URL 文件的图标处理方式与普通扩展不同。图标与已注册的协议处理程序绑定,该处理程序通常是您的默认浏览器。
此外,系统还区分 HTTP、HTTPS、FTP 和 mailto 链接
(以及一些其他不相关的链接)
但你可以改变它们而不必改变你的默认浏览器。我描述了我自己改变图标的方法。
- 首先,您必须知道哪个浏览器注册了您的 HTTP 和 HTTPS Windows 快捷方式
(.url 文件) 然后,您可以在
regedit.exe
存储默认图标的位置进行搜索。在我的示例中,我注册了一个便携式浏览器本指南。正如您在指南中看到的,默认图标存储在以下位置
笔记:粗体部分会根据您自己注册的浏览器而有所不同[HKEY_LOCAL_MACHINE\SOFTWARE\Classes\ OperaHTML \DefaultIcon] @="C:\\tools\\operaPortable\\opera.exe,0"
- 第二行定义您的新图标。末尾的零/空值定义使用的图标索引,如果您选择的 .exe 或 .dll 包含多个图标,则该索引很重要。第一个图标的索引为 0,第二个图标为 1,依此类推。
- 搜索此条目并更改默认值 不幸的是,我无法给你一个英文屏幕,但它也提供了相关信息
- 您必须对所有想要更改的协议执行此操作。
重要的:请在更改注册表中的任何内容之前立即进行完整备份。这样,当您弄乱某些内容时,您可以轻松恢复。
答案2
@nixda 的回答真的帮了我大忙!我找了好久才找到一种方法来更改 .URL 图标(在大多数情况下,更改网络浏览器后,它会更改为该浏览器的默认应用程序图标)。
我个人很喜欢“老”的IE-URL图标,简洁的页面上方是IE11的淡蓝色标志;此处预览图片。
如果您想在每个浏览器中自定义 .URL 图标,则需要在每个浏览器中逐个更改它们。 此主题包含 IE 的说明;请参阅“代码”白框下的内容:
Computer\HKEY_CLASSES_ROOT\IE.AssocFile.URL\DefaultIcon
这是 IE 的 .URL 图标的注册表项。我们可以通过在字符串中输入以下内容来获取所需的图标(我在 Windows 10 上,64 位):
C:\Windows\System32\url.dll,0
对于基于 Chromium 的 Microsoft Edge、Microsoft Edge Beta 和 Microsoft Edge Dev,以及 Firefox、Vivaldi 和 Brave Beta(我目前使用的浏览器),这些是相应的注册表项:
Computer\HKEY_CLASSES_ROOT\MSEdgeHTM\DefaultIcon
Computer\HKEY_CLASSES_ROOT\MSEdgeBHTML\DefaultIcon
Computer\HKEY_CLASSES_ROOT\MSEdgeDHTML\DefaultIcon
Computer\HKEY_CLASSES_ROOT\FirefoxURL-***\DefaultIcon
Computer\HKEY_CLASSES_ROOT\VivaldiHTM\DefaultIcon
Computer\HKEY_CLASSES_ROOT\BraveBHTML\DefaultIcon
您所要做的只是将它们更改为相同的图标,或您自己喜欢的任何其他图标。
我强烈推荐上述默认程序编辑器应用程序的其他所有功能,以及从 DLL 文件中提取图标信息的代码的良好预览。
注意:这样做可能不会更改系统上现有的 Internet 快捷方式(如果愿意,您可以通过从其“属性”对话框中自定义快捷方式来逐个更改它们)。但是,这将适用于DefaultIcon
您已编辑其注册表项的所有浏览器上所有新创建的快捷方式。- 另一个注意事项:我不知道具体原因,但有时 Edge 浏览器会恢复到其标准 URL 图标。我不确定为什么会发生这种情况,我猜想这可能与自动更新有关。再次编辑 Regedit 中的条目可以解决此问题。