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

на главную

Жанры

Недокументированные и малоизвестные возможности 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.

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

Боги, пиво и дурак. Том 3

Горина Юлия Николаевна
3. Боги, пиво и дурак
Фантастика:
фэнтези
попаданцы
5.00
рейтинг книги
Боги, пиво и дурак. Том 3

Мымра!

Фад Диана
1. Мымрики
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Мымра!

Белые погоны

Лисина Александра
3. Гибрид
Фантастика:
фэнтези
попаданцы
технофэнтези
аниме
5.00
рейтинг книги
Белые погоны

Любовь Носорога

Зайцева Мария
Любовные романы:
современные любовные романы
9.11
рейтинг книги
Любовь Носорога

Я все еще граф. Книга IX

Дрейк Сириус
9. Дорогой барон!
Фантастика:
боевая фантастика
попаданцы
аниме
5.00
рейтинг книги
Я все еще граф. Книга IX

Делегат

Астахов Евгений Евгеньевич
6. Сопряжение
Фантастика:
боевая фантастика
постапокалипсис
рпг
5.00
рейтинг книги
Делегат

Неудержимый. Книга XVI

Боярский Андрей
16. Неудержимый
Фантастика:
фэнтези
попаданцы
аниме
5.00
рейтинг книги
Неудержимый. Книга XVI

Чужая дочь

Зика Натаэль
Любовные романы:
любовно-фантастические романы
5.00
рейтинг книги
Чужая дочь

Ночь со зверем

Владимирова Анна
3. Оборотни-медведи
Любовные романы:
любовно-фантастические романы
5.25
рейтинг книги
Ночь со зверем

Месть бывшему. Замуж за босса

Россиус Анна
3. Власть. Страсть. Любовь
Любовные романы:
современные любовные романы
5.00
рейтинг книги
Месть бывшему. Замуж за босса

Совок – 3

Агарев Вадим
3. Совок
Фантастика:
фэнтези
детективная фантастика
попаданцы
7.92
рейтинг книги
Совок – 3

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

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

Измена. Он все еще любит!

Скай Рин
Любовные романы:
современные любовные романы
6.00
рейтинг книги
Измена. Он все еще любит!

Вечный Данж. Трилогия

Матисов Павел
Фантастика:
фэнтези
юмористическая фантастика
6.77
рейтинг книги
Вечный Данж. Трилогия