Paint.NET 替换 TortoiseHg 的应用程序图标

Paint.NET 替换 TortoiseHg 的应用程序图标

这让我有点困惑。我最近在工作中安装了一台新电脑,并像往常一样安装了 TortoiseHg 和 Paint.NET。然而,出于某种原因,所有 TortoiseHg 的快捷方式都被 Paint.NET 的应用程序图标替换了:

在此处输入图片描述

重新安装任一应用程序都无济于事,卸载 Paint.NET 才有帮助。

通过删除来清除图标缓存%LocalAppData%\IconCache.db也无济于事。

现在,TortoiseHg 的所有默认快捷方式都是应用程序本身的快捷方式,而不是特定的文件路径(这意味着我甚至无法更改快捷方式的图标):

在此处输入图片描述

我现在唯一的猜测是 Windows Installer 可能对其应用程序数据库有点困惑,但我真的不知道如何验证或修复这个问题。

快捷方式(以及注册表中的应用程序图标)显然引用了%SystemRoot%\Installer\{50AF3472-30AD-42C5-84FF-8A1ACE7CEFBF}\thgIcon.ico正确的图标。{50AF3472-30AD-42C5-84FF-8A1ACE7CEFBF}也是注册表中 TortoiseHg 的产品 G​​UID。因此看起来据我所知,产品设置正确。

答案1

解决方法已发布这里也适用于这种情况。最初在问题线索对于 TortoiseHg 来说,这似乎是 Windows 安装程序快捷方式和图标文件的默认应用程序存在的问题。

答案2

Windows 资源管理器中的图标由已注册的“图标渲染应用程序”对象渲染(显示)。如果“图标渲染应用程序”无法理解图标,则它会显示自己的图标。

当 Paint.NET 无法理解 TortoiseHg 图标时,您会看到 Paint.NET 图标。

此类错误可能是由 TortoiseHg 的问题引起的,可通过重新安装 TortoiseHg 来解决并清除图标缓存或者可能是由 Paint.NET 的问题引起的,可以通过使用文件关联对话框告诉 Windows 使用不同的应用程序来显示图标(.ico 文件)来解决。

相关内容