6

Скажем, у меня есть файл и там установлен значок. Как получить значок, который изображен на файле? Файл произвольный - какое-то расширение, о котором я понятия не имею. Просто как получить его иконку.

РЕДАКТИРОВАТЬ: Кстати, значок, который изображен на файле назначается, когда я сказал SO открыть файл с EXE-файл, который я создал. И в этом исполняемом файле нет значка, который находится на файле. Просто, я полагаю, ОС (Vista) создала иконку файла, взяв иконку exe-файла и разместив ее на белой бумаге. ТАК, я хочу получить эту иконку.

4 ответа4

5

Значки сопоставления файлов назначаются Windows, большинство из которых находятся в %Windir%\system32\shell32.dll . Вы можете узнать, какой файл предоставляет конкретный значок, перейдя в Инструменты - Параметры папки - Типы файлов и затем нажав кнопку «Дополнительно» для нужного типа файла. Наконец, нажмите «Изменить значок» в появившемся окне, и оно покажет вам путь к значку файла.

Вы можете использовать Resource Hacker для экспорта иконки из файла.

1

Пакетная иконка экстрактор

Загрузите BatchIconExtractor.exe и разместите его на рабочем столе. Перетащите файл или папку на значок приложения. Все значки из файла или из всех файлов в данной папке сохраняются в новую папку, называемую "значки". Эта папка создается в той же папке, где находится приложение (по умолчанию Desktop).

1

Единственный способ, который я знаю, кроме копания в реестре, - это код .Net. Есть функция ExtractAssociatedIcon(), которая дает вам ассоциированный значок с тем файлом, который вы передаете. Возможно, не тот ответ, который вы ищете, но в Windows нет доступного интерфейса для этой конкретной задачи;)

Обновление: для создания такого приложения, см. Http://pastie.org/1075055 (скопируйте код, используя кнопку RAW, чтобы избежать номеров строк)

0

IconPackager - это инструмент для Windows Vista, который позволяет редактировать значки. (В Windows XP эта возможность была встроена.)

ResEdit - это хороший редактор ресурсов, который позволит вам открывать и сохранять значки, содержащиеся в файле .exe.

Всё ещё ищете ответ? Посмотрите другие вопросы с метками .