Как я могу отображать разные значки для одного и того же расширения файла

В Visual Studio есть файлы * .SLN для 2008 и 2010 годов.

В проводнике значок, связанный с файлом, каким-то образом зависит от версии. У меня всегда было впечатление, что связанный значок просто смотрел на расширение, но, очевидно, что-то еще происходит.

Я как разработчик спрашиваю о переполнении стека - для моего приложения, но если вы считаете, что это относится к другому форуму, я буду рад перенести обсуждение в другое место.

Спасибо!


person ScottCate    schedule 18.06.2010    source источник


Ответы (2)


Взгляните на HKEY_CLASSES_ROOT\VisualStudio.Launcher.sln\ShellEx\IconHandler. Значок обрабатывается расширением оболочки, а не обычным способом с DefaultIcon.

На странице Создание обработчиков значков MSDN показано, как создайте DLL-расширение оболочки, которое предоставляет значки.

person Wim    schedule 18.06.2010

Я нашел код Delphi по адресу http://web.archive.org/web/20080723234358/http://www.delphi3000.com/articles/article_3285.asp, который, похоже, выполняет свою работу. Может быть, это может вдохновить вас.

РЕДАКТИРОВАТЬ: сайт больше не существует, используя web.archive.org, предоставленный @ samir105

person Patrick    schedule 18.06.2010