Рис. 17.2. Использование файла desktop.ini для изменения изображения папки
С помощью файла desktop.ini можно также запретить создание в папке других папок и файлов (при этом есть возможность во вложенных папках создать папки и файлы). Для этого необходимо в блоке [.ShellClassInfo] создать следующие строки:
UICLSID={7BD29E00-76C1-11CF-9DD0-00A0C9034933}
CLSID={FF393560-C2A7-11CF-BFF4-444553540000}
После этого рисунок папки изменится, а при попытке записи в папку будет выдаваться сообщение (рис. 17.3). Если же необходимо, чтобы рисунок папки не менялся, то строку CLSID={FF393560-C2A7-11CF-BFF4-444553540000} нужно удалить.
Рис. 17.3. Ошибка при создании папки или файла
Блок [.ShellClassInfo] может иметь ключевое слово LocalizedResourceName, которое переопределяет название папки. Например, если в файле desktop.ini для нашей папки создать строку LocalizedResourceName=@shell32.dll,-21765, то название папки Doc_Natali изменится на название Application Data. При этом, к сожалению, ключевое слово LocalizedResourceName не поддерживает прямой текст. Другими словами, нужно обязательно указывать текст, хранящийся в какой-либо библиотеке.
Но, кроме названия самой папки, с помощью файла desktop.ini можно изменить названия файлов, содержащихся в этой папке. Для этого служит блок INI-файла [LocalizedFileNames]. Он может включать в себя строки формата «истинное название файла»=«библиотека, и индекс нового названия в ней». К сожалению, новые названия прямым текстом указывать нельзя.
Например, если в папке содержится файл PICT0412.JPG, то для изменения названия этого файла на Рабочий стол (создать ярлык), нужно воспользоваться строкой PICT0412.JPG=@sendmail.dll, –21.
Файлы с таким расширением являются командными файлами оболочки Windows и используются для различных целей. Например, можно создать файл, который будет сворачивать все окна. Его содержимое приведено в листинге 17.3. Если ввести подобный текст в текстовый файл, а потом присвоить ему расширение SCF, то будет создан соответствующий файл (расширение файла будет скрыто), выполнение которого свернет все окна.
ПРИМЕЧАНИЕ
При этом значок, используемый файлом, можно изменять.
Листинг 17.3. Файл для сворачивания всех окон
[Shell]
Command=2
IconFile=explorer.exe,3
[Taskbar]
Command=ToggleDesktop
Можно также создать файл для просмотра каналов Интернета. Для этого используется представленный в листинге 17.4 текст.
Листинг 17.4. Файл для смены каналов
[Shell]
Command=3
IconFile=shdocvw.dll,-118
[IE]
Command=Channels
Можно создать файл для открытия Проводника Windows XP, как показано в листинге 17.5.
Листинг 17.5. Открытие Проводника
[Shell]
Command=2
IconFile=explorer.exe,1
[Taskbar]
Command=Explorer
Вообще, это довольно интересные файлы, так как они могут хранить любой другой посторонний текст, который не будет влиять на функциональность данных файлов. При этом никому и в голову не придет посмотреть содержимое этих файлов на предмет посторонних записей, поэтому в них можно запросто хранить конфиденциальную информацию.
Данный файл используется при установке нескольких операционных систем семейства Windows на одном компьютере для реализации возможности выбора между ними при загрузке системы. Рассмотрим содержимое этого файла. Файл расположен в каталоге %systemdrive%, хотя наиболее удобным способом его редактирования является стандартная программа msconfig. Она имеет вкладку BOOT.INI, с помощью которой довольно легко работать с этим файлом, если знать его синтаксис. По этой причине сначала рассмотрим синтаксис данного файла.
Файл BOOT.INI состоит из двух блоков. Первый из них называется [boot loader] и содержит информацию о времени ожидания выбора пользователем операционной системы, а также об операционной системе, загрузка которой будет выполнена в случае, если пользователь так и не выбрал за предоставленное время конкретную операционную систему. Второй блок называется [operating systems]. В нем находится информация обо всех операционных системах, которые можно будет выбрать для загрузки с помощью списка операционных систем. Посмотрим на листинг 17.6, в котором представлен пример файла BOOT.INI.
Листинг 17.6. Пример файла BOOT.INI
[boot loader]
timeout=5
default=multi(0)disk(0)rdisk(0)partition(2)\WINDOWS
[operating systems]
multi(0)disk(0)rdisk(0)partition(3)\WINDOWS="Windows XP Professional Test" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(2)\WINDOWS="Windows XP Tablet PC Edition" /noexecute=optin /fastdetect
multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Windows XP Professional Recent" /fastdetect /NoExecute=OptIn
Читать дальше