Чтение онлайн

на главную - закладки

Жанры

Недокументированные и малоизвестные возможности Windows XP

Клименко Роман

Шрифт:

идентификатор»=«библиотека для работы компонентов», «функция библиотеки», «INF-файл, описывающий компоненты»,«отображение компонентов»,«номер»

Следующие элементы являются наиболее важными.

■ INF-файл, описывающий компоненты — описывает разделы, отображаемые в диалоге Установка и удаление программ. Именно такой INF-файл сейчас и будет создан.

■ Отображение компонентов — если в данном поле будет стоять слово HIDE, то данный компонент не будет отображаться в диалоге дополнительных компонентов Windows. Чтобы компонент отображался в диалоге, необходимо чтобы это поле было пустым.

■ Например, чтобы добавить в диалог

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

На рис. 15.2 показан пример содержимого этого файла.

Рис. 15.2 .Содержимое файла sysoc.INF

Другой возможностью является добавление в данный диалог своих компонентов. Для этого необходимо сначала создать INF-файл, описывающий новые компоненты, а потом создать в файле sysoc.inf ссылку на созданный INF-файл. Сначала посмотрим на простой пример INF-файла. В этом примере сразу создается корневой раздел, отображаемый непосредственно в диалоге установки компонентов Windows, два вложенных в этот раздел подраздела, а также еще два раздела, которые и будут устанавливать или удалять компоненты. В нашем случае эти разделы будут просто скрывать (или отображать, в зависимости от состояния флажка) версию Windows на Рабочем столе, а также скрывать (или отображать) название значка Мой компьютер.

Листинг 15.13. Создание разделов в диалоге компонентов

[version]

signature="$Chicago$"

[Optional Components]

TopMain

Interface

Settings

HTMcomputer

Versus

[TopMain]

OptionDesc = Мои настройки

Tip = Варианты настройки интерфейса и конфигурации

IconIndex = 0

[Interface]

OptionDesc = Интерфейс Windows

Tip = Варианты настройки интерфейса

IconIndex = 4

Parent = TopMain

[Settings]

OptionDesc = Конфигурация Windows

Tip = Варианты настройки конфигурации компьютера

IconIndex = 16

Parent = TopMain

[HTMcomputer]

OptionDesc = Скрыть название моего компьютера

Tip = Скрывает название значка Мой компьютер

IconIndex = 0

Parent = Interface

AddReg = AddHTM

Uninstall = HTMUn

Modes = 0,1,2,3

[Versus]

OptionDesc = Отобразить версию на Рабочем столе

Tip = отображает версию
операционной системы на Рабочем столе пользователя

IconIndex =4

Parent = Interface

AddReg =AddVersion

Uninstall =VersUn

Modes = 0,1,2,3

[AddHTM]

HKCR, "CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\ShellFolder", WantsFORDISPLAY, 0x00010001, 1

[AddVersion]

HKCU, "Control Panel\Desktop", PaintDesktopVersion, 0x00010001, 1

[HTMUn]

DelReg = HTMDel

[VersUn] AddReg = VersDel

[HTMDel]

HKCR, "CLSID\{20D04FE0-3AEA-1069-A2D8-08002B30309D}\ShellFolder", WantsFORDISPLAY

[VersDel]

HKCU, "Control Panel\Desktop", PaintDesktopVersion, 0x00010001, 0

Формат INF-файла для создания компонентов в диалоге установки Windows немного отличается от обычного формата INF-файлов. Во-первых, основной блок INF-файла обязательно должен называться [Optional Components], иначе INF-файл работать не будет. Блок включает в себя список других блоков данного INF-файла. Каждый из описанных в [Optional Components] блоков определяет один раздел в диалоге установки компонентов Windows.

Блок описания раздела установки компонента содержит следующие ключевые слова.

■ OptionDesc — определяет название раздела, отображаемого в диалоге Установка компонентов Windows.

■ Tip — указывает подсказку для раздела, отображаемого в нижней части диалога Установка компонентов Windows.

■ Icon Index — определяет индекс значка, отображаемого напротив данного раздела в диалоге Установка компонентов Windows. Например, идентификатор 0 определяет значок компьютера, идентификатор 2 — монитора, 14 — принтера.

■ Parent — указывает название блока INF-файла, описывающего раздел, который будет родителем для нашего раздела в диалоге установки компонентов Windows. Если данное ключевое слово отсутствует, то наш раздел будет отображаться непосредственно в диалоге установки конфигурации Windows.

■ Uninstall — определяет блок INF-файла, вызываемый для данного компонента при установке созданного раздела (устанавливать можно только разделы, входящие непосредственно в список диалога установки компонентов (корневые), а не отдельно разделы, вложенные в корневой), если флажок напротив данного компонента будет снят.

В блоке установки компонента можно также пользоваться такими стандартными ключевыми словами, как AddReg, BitReg, DelReg, CopyFiles и т.д. Все блоки, описанные в этих ключевых словах, будут выполняться при установке флажка напротив соответствующего компонента.

Теперь добавим ссылку на наш компонент в файл sysoc.inf. Для того чтобы так сделать, необходимо в блок [Components] добавить строку следующего вида: hello=ocgen.dll, OcEntry, prim2.inf, , 7. Здесь test2 определяет идентификатор присоединяемого INF-файла, a prim.inf является названием самого присоединяемого файла. Стоит еще сказать, что созданный INF-файл должен находиться в каталоге %systemroot%\inf.

Поделиться:
Популярные книги

Блуждающие огни 2

Панченко Андрей Алексеевич
2. Блуждающие огни
Фантастика:
боевая фантастика
космическая фантастика
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Блуждающие огни 2

Мастер Разума II

Кронос Александр
2. Мастер Разума
Фантастика:
героическая фантастика
попаданцы
аниме
5.75
рейтинг книги
Мастер Разума II

Измена. Не прощу

Леманн Анастасия
1. Измены
Любовные романы:
современные любовные романы
4.00
рейтинг книги
Измена. Не прощу

Эволюционер из трущоб. Том 7

Панарин Антон
7. Эволюционер из трущоб
Фантастика:
попаданцы
аниме
фэнтези
фантастика: прочее
5.00
рейтинг книги
Эволюционер из трущоб. Том 7

Титан империи

Артемов Александр Александрович
1. Титан Империи
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Титан империи

Идеальный мир для Лекаря 22

Сапфир Олег
22. Лекарь
Фантастика:
юмористическое фэнтези
аниме
фэнтези
5.00
рейтинг книги
Идеальный мир для Лекаря 22

Барин-Шабарин 2

Гуров Валерий Александрович
2. Барин-Шабарин
Фантастика:
попаданцы
альтернативная история
фэнтези
5.00
рейтинг книги
Барин-Шабарин 2

Невеста снежного демона

Ардова Алиса
Зимний бал в академии
Фантастика:
фэнтези
6.80
рейтинг книги
Невеста снежного демона

Чиновникъ Особых поручений

Кулаков Алексей Иванович
6. Александр Агренев
Фантастика:
попаданцы
альтернативная история
5.00
рейтинг книги
Чиновникъ Особых поручений

Связанные Долгом

Рейли Кора
2. Рожденные в крови
Любовные романы:
современные любовные романы
остросюжетные любовные романы
эро литература
4.60
рейтинг книги
Связанные Долгом

Целительница моей души

Чекменёва Оксана
Любовные романы:
любовно-фантастические романы
7.29
рейтинг книги
Целительница моей души

Кодекс Охотника. Книга X

Винокуров Юрий
10. Кодекс Охотника
Фантастика:
фэнтези
попаданцы
аниме
6.25
рейтинг книги
Кодекс Охотника. Книга X

Седьмая жена короля

Шёпот Светлана
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Седьмая жена короля

Академия проклятий. Книги 1 - 7

Звездная Елена
Академия Проклятий
Фантастика:
фэнтези
8.98
рейтинг книги
Академия проклятий. Книги 1 - 7