Ich versuche, verschiedene Icon-Overlays über die Icons verschiedener Dateien hinzuzufügen (Hinweis: nicht alle Dateien eines bestimmten Typs, nur bestimmte Dateien). Wenn Sie nicht verstehen, was ich meine, beziehe ich mich auf Programme wie TortoiseSVN, TortoiseHG, Dropbox, etc.
Kann das in .NET gemacht werden? Wenn das so ist, wie? Ich hoffe, dass da draußen eine Bibliothek ist. Ich fand diesen CodeProject-Artikel über so etwas gab, aber es ist nicht .NET.
Vielen Dank im Voraus.
Nein, es ist nicht .NET. Shell-Programmierung ist in der Domäne von nicht verwaltetem C / C ++. Shell32.dll verfügt über eine Typenbibliothek, die einige Funktionen für Skriptsprachen und .NET verfügbar macht. Die IShellIconOverlay-Schnittstelle erbt jedoch von IUnknown und ist für Skripts nicht zugänglich. Es ist technisch möglich, aber Sie müssen die Schnittstelle in C # neu deklarieren, indem Sie die Deklaration in der ShlObj.h-Headerdatei des SDK als Vorlage verwenden. Irgendjemand hat es wahrscheinlich irgendwo gemacht, aber es ist ungewöhnlich, es zum Laufen zu bringen. Eine schnelle Google-Suche zeigt nichts Nützliches.
Hoffentlich wird .NET 4.0 einige Aktivitäten wiederbeleben und das Problem der CLR-Versionsinjektion lösen. Ich habe noch kein Zeichen davon gesehen.
Tags und Links .net c# windows icons windows-explorer