我需要一种使用C#或C ++在Windows XP / Vista中为文件夹和文件创建图标覆盖的方法? 有任何示例吗?
谢谢, -Sean!
谢谢, -Sean!
Tigris的TortoiseSVN产品大量使用图标覆盖,这些覆盖由几个Tortoise产品共享的库提供,这些覆盖本身是用C++编写而不是C#。
TortoiseOverlays项目的文档解释了它们如何使用以及遇到的问题(用户名:guest,空密码),GPL源代码在Subversion存储库中(与上述相同的用户名/密码)。
来自文档的片段:
TortoiseOverlays会向资源管理器注册自己以处理九种状态,即注册了九个覆盖处理程序。资源管理器进程初始化TortoiseOverlays处理程序,并调用其IShellIconOverlayIdentifier :: GetOverlayInfo()方法。TortoiseOverlays在HKLM \ Software \ TortoiseOverlays \ Statusname下查找已注册的覆盖处理程序,并调用它们的GetOverlayInfo()方法以便它们也可以进行初始化(请注意,您的处理程序所做的任何图标名称、索引等更改都将被稍后覆盖并且不会使用 - 现在是TortoiseOverlays处理图标)。初始化后,TortoiseOverlays将每个调用转发到其IShellIconOverlayIdentifier :: IsMemberOf()方法中的其他处理程序。第一个返回S_OK的处理程序决定是否显示图标。