windows folder

Операционная система Windows предоставляет возможность пользователю задать для каждой папки произвольную иконку. Это можно применять для украшения своего компьютера, а так же для упрощения визуального поиска в Проводнике нужной папки. Многие даже начинающие пользователи знают об этой возможности Windows, однако есть некоторые моменты, которые не так широко известны пользователям.

Действительно, когда нужную папку можно легко найти с одного взгляда среди множества других не вчитываясь в их названия, это здорово облегчает навигацию. Причем сделать это можно буквально в несколько действий. Просто щелкаем в Проводнике по папке, иконку которой хотим изменить на другую правой кнопкой мыши и выбираем в контекстном меню пункт «Свойства». Откроется окно, в котором нам нужно перейти на вкладку «Настройка», как на скриншоте ниже.

change icon

Если открыть папку в библиотеке, то вкладки «Настройка» не будет. Нужно щелкнуть по ней правой кнопкой мыши и выбрать в контекстном меню пункт «Расположение папки», а уже затем действовать, как написано выше.

Здесь нас интересует кнопка «Сменить значок», после нажатия которой, откроется окно выбора значка.

icon selection

По умолчанию, Windows предлагает выбрать значок из файла shell32.dll, который расположен по адресу C:\Windows\System32 и представляет собой динамическую библиотеку ресурсов. Просто выделяете понравившейся вам значок мышкой и нажимаете OK, а затем OK уже в окне свойства папки. Теперь в Проводнике, в адресной строке и левом нижнем углу Проводника будет показываться выбранный пользователем значок. Кстати, аналогичным образом можно настроить иконку ярлыка.

original folder icon

Если вы не нашли устраивающий вас значок в shell32.dll, то можно поискать в других динамических библиотеках в этой папке (например, imageres.dll, ieframe.dll и т.д.) и любых других местах, в EXE файлах и файлах значков ICO, нажимаете кнопку «Обзор» и указываете нужный файл. Однако там будут только стандартные значки, используемые в операционной системе. Зато вы можете скачать с сайтов в интернете огромное количество самых разнообразных иконок в формате ICO, достаточно задать поисковый запрос вроде этого «иконки для папок скачать». В случае, когда вы хотите добиться полной уникальности оформления своего компьютера или не можете найти устраивающий вас вариант, то можно нарисовать нужный вам значок самостоятельно.

Вроде все замечательно работает, но есть один нюанс. Если вы сделаете такую настройку на внешнем носителе (флэшке), то при подключении к другому компьютеру будет отображаться стандартный значок папки. Так же если у вас установлено несколько ОС Windows на компьютере, то придется настраивать в каждой отдельно, что довольно неудобно. Давайте рассмотрим, как сделать так, чтобы настроив значок папки один раз, он отображался правильно на любом компьютере с любой версией Windows.

Для начала необходимо выяснить, где хранится настройка иконки папки. Здесь все просто в папке, значок которой мы изменяем, появляется файл с именем desktop.ini который и хранит сделанные настройки. Обычно он не виден в Проводнике, так как имеет атрибут скрытый или скрытый и системный и чтобы его увидеть нужно включить их отображение.

Откроем этот файл в блокноте и посмотрим его содержимое, там могут быть различные строки, но нас интересует строчка IconResource в которой указан абсолютный путь к файлу с иконкой.

[.ShellClassInfo]
IconResource=C:\Windows\system32\SHELL32.dll,41

Так как в файле может храниться больше одного значка, то после него через запятую обязательно указывается его порядковый номер в файле, причем нумерация начинается с нуля, в данном случае используется сорок первая иконка.

Чтобы папка везде отображалась одинаково, достаточно сохранить в нее файл со значком, установить ему атрибуты скрытый и системный, чтобы его не было видно и изменить содержимое файла desktop.ini следующим образом:

[.ShellClassInfo]
IconResource=torrent.ico,0

где, torrent.ico — название файла значка.

Теперь на всех компьютерах с Windows 7 у папки будет показываться одинаковый значок. Правда есть одно обязательное условие, папка должна иметь атрибут «Только для чтения», который указывает операционной системе, что нужно выполнить содержимое хранящегося в ней файла desktop.ini. Когда пользователь меняет значок папки через свойства папки, он назначается автоматически. Поэтому назначьте любой значок папке через ее свойства, а потом измените desktop.ini или создайте его сами и укажите атрибут «Только для чтения» руками.

Атрибуты файлов и папок можно посмотреть и настроить через меню «Свойства», но там доступны не все варианты. Можно воспользоваться каким-либо файловым менеджером, например Total Commander или воспользоваться командой attrib в командной строке.

Осталось сделать так, чтобы в более старых версиях Windows таких как XP и Vista тоже все показывалось правильно. Дело в том, что в них используется немного другой синтаксис, поэтому нам необходимо добавить несколько строчек в файл desktop.ini, теперь он будет выглядеть так.

[.ShellClassInfo]
IconResource=torrent.ico,0
IconFile=torrent.ico
IconIndex=0

Где, IconResource — имя файла со значком и через запятую его номер в файле (для Windows 7);
Для более старых версий операционной системы используются строчки IconFile — имя файла и IconIndex — номер значка в файле.

Теперь данная папка на сменном носителе будет иметь оригинальную иконку на всех компьютерах с операционной системой Windows и будет визуально выделяться среди остальных.

У данного способа есть один недостаток, в папке появляются два служебных файла. Большинству людей это безразлично, так как им можно задать атрибуты скрытый и системный и они не будут мешаться под ногами. Однако есть некоторое количество пользователей, у которых всегда включено отображение скрытых и системных файлов и лишние служебные файлы в папке мешают им выполнять операции над остальными файлами. В принципе, такие пользователи могут частично нивелировать неудобство, перенеся файл иконки в другое место, но расплатой будет некоторая потеря гибкости.

Допустим папка значок которой мы хотим изменить находится в корне флэшки. Создадим в корне флэшки папку с именем «Иконки», куда сохраним все файлы со значками папок используемые на ней. Осталось отредактировать файл desktop.ini следующим образом:

[.ShellClassInfo]
IconResource=..\Иконки\Имя_значка.ico,0
IconFile=..\Иконки\Имя_значка.ico
IconIndex=0

Теперь все значки папок на сменном носителе хранятся в одном месте, а в папках остались только файлы desktop.ini. Правда если перенести папку в другое место, то придется править desktop.ini снова.

 

Добавить комментарий


Защитный код
Обновить