如何将自定义图标分配给文件类型

如果未为某个文件类型分配自定义默认图标,桌面和 Windows 资源管理器将使用通用默认图标显示该类型的所有文件。 例如,以下屏幕截图显示了用于 MyDocs4.myp 文件的此默认图标。

默认图标的屏幕截图

虽然此屏幕截图中显示的所有文件都是简单的文本文件,但只有 MyDocs4.myp 显示 Windows 默认图标。 这是因为.txt扩展名是具有自定义默认图标的已注册文件类型。

以下屏幕截图显示了已分配给 .myp 文件类型的自定义图标。

.myp 文件的自定义图标的屏幕截图

注意

还可以根据应用程序特定的情况分配图标。

 

Instructions

步骤 1:

在以下两个位置之一创建名为 DefaultIcon 的子项:

  • 对于文件类型分配,HKEY_CLASSES_ROOT.extension\
  • 对于应用程序分配, HKEY_CLASSES_ROOT\ProgID

步骤 2:

DefaultIcon 子项分配 REG_SZ类型的默认值 ,该值指定包含图标的文件的完全限定路径。

步骤 3:

调用 SHChangeNotify 函数以通知 Shell 更新其图标缓存。

备注

以下示例显示了文件类型图标分配所需的注册表项的详细视图。 文件扩展名与应用程序相关联,但图标分配用于文件扩展名本身,以便关联的应用程序不会指定默认图标。

HKEY_CLASSES_ROOT
   .myp
      (Default) = MyProgram.1
      DefaultIcon
         (Default) = C:\MyDir\MyProgram.exe,2

以下示例显示了应用程序图标分配所需的注册表项的详细视图。 .myp 文件扩展名首先与 MyProgram.1 应用程序相关联。 然后为 MyProgram.1 ProgID 子项分配自定义默认图标。

HKEY_CLASSES_ROOT
   .myp
      (Default) = MyProgram.1
   MyProgram.1
      DefaultIcon
         (Default) = C:\MyDir\MyProgram.exe,2

包含图标的任何文件都是可接受的,包括 .ico、.exe和.dll文件。 如果文件中有多个图标,则路径后应跟一个逗号,然后是图标的索引。

文件类型