Показать полную графическую версию : [решено] Получение иконки из файла
Здравствуйте. Подскажите как получить иконку файла! Для exe и dll нашел! А вот как сделать для любых других?
Delirium
15-07-2011, 05:43
Не понял, тебе нужны просто иконки какие то? iconsearch.ru - туча иконок на все что можно :)
Delirium, Не :) Нужно не это. Сейчас объясню. Предположим есть некий документ Microsoft Word, и есть приложение с ListView. В LsitView нужно добавить этот документ, чтобы он отображался с такой же иконкой как и в проводнике.
Обычно так:
1. Ищем в реестре расширение: «HKEY_CLASSES_ROOT\.doc». Берём значение из «HKEY_CLASSES_ROOT\.doc\(Default)» (например, «Word.Document.8»).
2. Ищем «HKEY_CLASSES_ROOT\Word.Document.8», берём значение из «HKEY_CLASSES_ROOT\Word.Document.8\DefaultIcon\(Default)» (например, «C:\WINDOWS\Installer\{90110419-6000-11D3-8CFE-0150048383C9}\wordicon.exe,1»).
Далее, как в #1 (http://forum.oszone.net/post-1713050-1.html).
Delirium
15-07-2011, 08:37
Надо тоже взять на заметку, мне в документообороте пригодится... :)
Может быть, LilLoco спрашивал именно про .Net? Тут я пас, не знаю, может быть и есть готовые методы.
А так — вот ссылки по теме:
DefaultIcon (COM) (http://msdn.microsoft.com/en-us/library/ms682212(v=vs.85).aspx)
Registering a Program's Icon (http://msdn.microsoft.com/en-us/library/cc144109(v=vs.85).aspx#registering_an_icon)
How to Assign a Custom Icon to a File Type (Windows) (http://msdn.microsoft.com/en-us/library/hh127427(v=vs.85).aspx)
Так, спасибо всем за помощь! Нашел WinApi функцию, которая это может сделать :) Думаю это проще, чем копать в реестре! Но как говорится на вкус и цвет...
Вот описание функции (http://msdn.microsoft.com/en-us/library/bb762179%28v=vs.85%29.aspx). А вот пример (http://support.microsoft.com/kb/319350) использования на C#.
спрашивал именно про .Net? »
Ну мне нужно в .Net. Но информация полезна различная, не только конкретно этого.
Еще раз, огромное спасибо за помощь!
© OSzone.net 2001-2012
vBulletin v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.