Desktop.ini

Эта статья находится на начальном уровне проработки, в одной из её версий выборочно используется текст из источника, распространяемого под свободной лицензией
Материал из энциклопедии Руниверсалис

desktop.ini — это файл конфигурации, который содержит данные настроек внешнего вида системной папки в ОС Microsoft Windows: значок, цвет текста, фоновый рисунок и т. д.

Файл desktop.ini, как и любой .ini-файл, структурно разделён на секции. Имена секций должны быть заключены в квадратные скобки. Каждая секция может содержать одну или несколько строк вида «ИмяПараметра=Значение».

Функциональность файла desktop.ini была сильно урезана в Windows XP с выходом SP1 и в Windows 2000 с выходом SP3. Изменения заключались в отмене поддержки HTML (файлы с расширением.htt). Это было связано с широким распространением вирусов, использующих уязвимости HTML. У предыдущих версий Windows к тому времени закончилась техподдержка, поэтому их данные изменения не коснулись.[источник не указан 5071 день]

Параметры

Параметр Значение
Секция [.ShellClassInfo]
ConfirmFileOp Установите значение этого параметра в 0, чтобы избежать появления сообщения о подтверждении перемещения или удаления системной папки.
NoSharing Общий доступ к папке. Может принимать два значения:

0 — открывает общий доступ к папке,
1 — запрещает общий доступ к папке.
(95(?)/98/ME/NT/2000/XP)

Sharing Аналог параметра NoSharing в Vista и более поздних версиях Windows. Может принимать два значения:

0 — запрещает общий доступ к папке,
1 — открывает общий доступ к папке.
(Vista/7(?))

CLSID Указав CLSID в файле desktop.ini и создав соответствующий ему раздел в реестре, можно оперировать с содержащей его папкой как с типом файлов.

Значение CLSID регистрируется в разделе реестра HKEY_CLASSES_ROOT\CLSID.
Яркий пример — любая папка (проект), созданная FineReader.
(95(?)/98/ME/NT/2000/XP/Vista/7(?))

IconFile Позволяет заменить стандартный значок папки. В качестве альтернативного значка можно использовать ресурсы (значки) файлов типа *.ico, *.bmp, *.exe, *.dll, или *.icl.

Пути к файлам ресурсов могут быть абсолютными и относительными. В последнем случае изменения будут также видны всем пользователям в сети. В путях к файлам со значками также допустимо использовать переменные среды (например, %SystemRoot%).

Работает только, если указан номер ресурса (значка) в параметре IconIndex.

IconIndex Порядковый номер значка в файле, причём нумерация начинается с 0, а не 1. Файлы типа .ico или .bmp содержат только один значок, поэтому для них IconIndex всегда равен нулю.

Работает только, если указан путь к файлу со значком в параметре IconFile.

IconResource Позволяет заменить стандартный значок папки в Windows Vista и более поздних ОС. Используется вместо IconFile и IconIndex.

Например, IconResource=%SystemRoot%\system32\shell32.dll,-238.

(Vista/7)

InfoTip Информационная строка-подсказка. Может быть текстовой строкой или строковым идентификатором в модуле ресурса (например, @shell32.dll,-12689)

(95(?)/98/ME/NT/2000/XP/Vista(?)/7(?))

HTMLInfoTipFile Ссылка на гипертекстовый файл (обычно Comment.htt) с информационной строкой-подсказкой.

(95(?)/98/ME/2000 SP1 и SP2/XP без SP)

LocalizedResourceName Позволяет сменить отображаемое имя папки.

В качестве значения указывается имя модуля и индекс ресурса-строки. Начиная с Windows 7 sp1 можно также указать текстовую строку без кавычек.

Пример: LocalizedResourceName=@shell32.dll,-21765 или LocalizedResourceName=Документы

Секция [LocalizedFileNames]
<ИмяФайла> Позволяет управлять отображаемыми именами файлов данном каталоге.

В качестве имени параметра используется физическое (реальное) имя файла, а в качестве значения — строка, используемая как отображаемое имя. Также можно указать модуль и индекс ресурса.

Пример: notes.txt="Заметки"

Секция [ExtShellFolderViews]
Default Единственный параметр секции. Позволяет изменить представление папки. Может принимать следующие значения:
  • {8BEBB290-52D0-11d0-B7F4-00C04FD706EC} — представляет содержимое папки в виде эскизов изображений;
  • {65F125E5-7BE1-4810-BA9D-D271C8432CE3} — представляет содержимое папки как веб-страницу (при помощи файла *.htt).
  • {BE098140-A513-11D0-A3A4-00C04FD706EC} — позволяет задать цвет подписи значков, фоновый рисунок, фоновый цвет.
  • {0057D0E0-3573-11CF-AE69-08002B2E1262}
  • {0E1FA5E0-3573-11CF-AE69-08002B2E1262}
  • {137E7700-3573-11CF-AE69-08002B2E1262}

Большинство этих параметров не поддерживают Windows XP SP1, Windows 2000 SP3 и более поздние ОС.

Секция [{BE098140-A513-11D0-A3A4-00C04FD706EC}]
Attributes
IconArea_Image Путь к фоновому рисунку.
IconArea_Text Цвет текста названий файлов и папок в шестнадцатеричном формате.
IconArea_TextBackground Цвет фона текста файлов и папок в шестнадцатеричном формате. Игнорируется в Windows XP, если указан параметр IconArea_Image, но работает, в Windows 2000, ME (действует только для списка имён файлов, остальные колонки не меняют фона текста).
Секция [{65F125E5-7BE1-4810-BA9D-D271C8432CE3}]
PersistMoniker Путь к гипертекстовому шаблону папки (.htt). Игнорируется, например, в Windows XP (SP2-SP3).
PersistMonikerPreview Путь к рисунку папки, который отображается в режиме Эскизы. Игнорируется, например, в Windows XP (SP2-SP3). Однако, Windows XP тот же эффект будет, если поместить в папку рисунок с именем folder.bmp (расширение может быть любым .bmp, .jpg или др.).
Секция [DeleteOnCopy][1]
Owner Владелец папки. Для открытия папки потребуется логин и пароль её владельца.
Personalized Назначение данного параметра остаётся загадкой.
PersonalizedName Название папки. Для примера, без файла desktop.ini папка «Мои документы» будет называться «Documents» (настоящим именем в файловой системе).

Пример содержимого файла desktop.ini[2]:

[.ShellClassInfo]
IconFile=install.ico
; install.ico - файл значка
IconIndex=0
; 0 - индекс значка, 0 - если файл содержит только 1 значок
InfoTip = "Описание папки"

[{BE098140-A513-11D0-A3A4-00C04FD706EC}]
;Лучше создать папку для размещения объектов и поставить атрибут скрытый
IconArea_Image=bkground.jpg
; bkground.jpg - фоновый рисунок
IconArea_Text=20123
; 20123 - цвет текста
[ExtShellFolderViews]
{BE098140-A513-11D0-A3A4-00C04FD706EC}={BE098140-A513-11D0-A3A4-00C04FD706EC}

[{BE098140-A513-11D0-A3A4-00C04FD706EC}]
{5984FFE0-28D4-11CF-AE66-08002B2E1262}={5984FFE0-28D4-11CF-AE66-08002B2E1262}

При этом папка, в которой находится desktop.ini, должна иметь атрибут только чтение (команда attrib +r «имя папки») или системный (attrib +s «имя папки»); только тогда в ней корректно будут отображаться все настройки[3].

См. также

Ссылки

Примечания

  1. Для кодировки ANSI (кириллица) используется секция [DeleteOnCopy.A], а для ОЕМ (DOS) — [DeleteOnCopy.W].
  2. INfineITy: Desktop_ini (недоступная ссылка). Дата обращения: 13 августа 2009. Архивировано 20 сентября 2016 года.
  3. Изменение параметров папки и вида папки. Дата обращения: 2 января 2008. Архивировано 1 января 2008 года.