【问题标题】:Different icons for files with same extension but different content?具有相同扩展名但内容不同的文件的不同图标?
【发布时间】:2011-05-16 13:52:14
【问题描述】:

我已将我的某个基于 xml 的文件类型 (.xmlentity) 与我的应用程序 (.net) 相关联,并且我希望根据这些文件的内容(根元素名称)使用不同的图标。

<note xmlns="mynamespace"></note> 应该有一种图标和

<notebook xmlns="mynamespace"></notebook> 应该有另一个。

如果没有不同的文件扩展名,这是否可能?

如果它只在 Windows 7 上运行就可以了。

【问题讨论】:

  • Visual Studio 使用 .SLN 文件执行此操作(在 VS2008 中创建的图标与在 VS2010 中创建的图标不同)。不过,不确定机制是什么。
  • 相关但不相同:superuser.com/q/317885/13889

标签: .net file windows-7 icons


【解决方案1】:

您正在寻找Icon Handler。它被实现为外壳扩展。不幸的是,MSDN 没有提供任何特定于图标处理程序的示例代码,但至少本文描述了此类 shell 扩展的要求。这篇文章也很有用:Creating Shell Extension Handlers

【讨论】:

    【解决方案2】:

    很遗憾没有。一种文件类型的一个图标。但是我看到程序通过插入 shell 来创建预览(Windows 照片查看器就是一个基本的例子。“Trackmania”也有它的数据文件的预览截图)

    Shell Preview Host on MSDN

    【讨论】:

    • 这绝对是可能的,因为 Visual Studio 为使用 VS2008 或 VS2010 创建的 .SLN 文件显示了不同的图标。具体是如何工作的,我不知道。
    • 我同意这应该是可能的。在我的 XP 系统上,一个实际上是 Excel 文件的 .xml 文件显示为带有 Excel 图标,即使 .xml 与不同的应用程序相关联。所以似乎有一种方法可以使图标取决于文件的内容。但是我不知道它是如何工作的。
    【解决方案3】:

    我对此感到疑惑,并在link 中找到了答案

    【讨论】:

    • 不要只留下一个链接的答案。解释如何解决这个问题。
    猜你喜欢
    • 2019-11-24
    • 2021-11-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多