Роман Клименко - Недокументированные и малоизвестные возможности Windows XP
- Название:Недокументированные и малоизвестные возможности Windows XP
- Автор:
- Жанр:
- Издательство:Питер
- Год:2006
- ISBN:5-469-01562-9
- Рейтинг:
- Избранное:Добавить в избранное
-
Отзывы:
-
Ваша оценка:
Роман Клименко - Недокументированные и малоизвестные возможности Windows XP краткое содержание
Книга содержит подробные сведения о таких недокументированных или малоизвестных возможностях Windows XP, как принципы работы с программами rundll32.exe и regsvr32.exe, написание скриптов сервера сценариев Windows и создание INF-файлов. В ней приведено описание оснасток, изложены принципы работы с консолью управления mmc.exe и параметрами реестра, которые изменяются с ее помощью. Кроме того, рассмотрено большое количество средств, позволяющих выполнить тонкую настройку Windows XP.
Эта книга предназначена для опытных пользователей и администраторов, которым интересно узнать о нестандартных возможностях Windows. Тем более что довольно часто эти возможности позволяют обойти ограничения на те или иные функции Windows, установленные администратором. Издание также может быть интересно и обычным пользователям
Недокументированные и малоизвестные возможности Windows XP - читать онлайн бесплатно полную версию (весь текст целиком)
Интервал:
Закладка:
Работа с диалогом Установка и удаление программ
Одной из интересных возможностей INF-файлов является возможность их использования как для добавления команды в диалог Установка и удаление программ, так и для выполнения процесса деинсталляции при помощи диалога Установка и удаление программ. Рассмотрим простой пример использования INF-файлов для создания так называемого зацикленного элемента диалога Установка и удаление программ, который применяется для включения и отключения возможности автоматического запуска дисков. Принцип работы приведенного ниже сценария прост. При первом своем вызове он копирует себя в папку %systemroot%\INF, отключает автоматический запуск дисков, а также добавляет возможность включения автоматического запуска дисков в диалог Установка и удаление программ. После удаления данного INF-файла с помощью диалога Установка и удаление программ происходит включение автоматического запуска дисков, а также создание в диалоге Установка и удаление программ новой строки, с помощью которой можно опять отключить автоматический запуск диска. Другими словами, создается постоянный цикл. Конечно, пример с изменением значения одного параметра довольно спорен, ведь намного проще было бы добавить свой флажок в один из стандартных диалогов Windows, поддерживающих добавление в свои списки новых элементов. Но если необходимо при установке параметра также выполнять какие-либо команды или модифицировать сразу несколько параметров (например, создать несколько разновидностей настройки оболочки Windows, а потом переходить между ними), то данный способ использования INF-файлов может быть незаменим (рис. 15.1).
Рис. 15.1. Создание команды в диалоге Установка и удаление программ
[version]
Signature = $CHICAGO$
[DefaultInstall]
AddReg = AutoRunOff, InstallInf
CopyFiles = INFcopy
;Ниже мы используем переменную %PATH% для указания изменяемой ветви реестра.
;Переменная – это специальная последовательность символов, которая при
;установке INF-файла будет преобразовываться в строку, определенную для нее
;в стандартном блоке [Strings] (обычно этот блок располагается в самом низу
;INF-файла). Использование переменных позволяет улучшить читабельность
;INF-файлов большого размера, а также предоставляет разработчику возможность
;цетрализованного хранения всех информационных и других строчек программы.
;Иными словами, вместо того чтобы искать необходимую для изменения строку
;по всему содержимому INF-файла, он может описать ее в блоке [Strings]
[AutoRunOff]
HKLM, %PATH%, AutoRun, 0x00010001, 0
;Добавляем строку в диалог Установка\удаление программ. В первой главе
;мы кратко рассматривали формат этого диалога.
[InstallInf]
HKLM, %DISPLAY% autorunOnOff,,,
HKLM, %DISPLAY% autorunOnOff, DisplayName,,%NAME_ON%
HKLM, %DISPLAY% autorunOnOff, UninstallString,,\"rundll32 setupapi, InstallHINFSection DefaultUninstall 132 %17%\primer.INF"
[DefaultUninstall]
AddReg = AutoRunOn
[AutoRunOn]
HKLM, %PATH%, AutoRun, 0x00010001, 1
HKLM, %DISPLAY% autorunOnOff, DisplayName,,%NAME_OFF%
HKLM, %DISPLAY% autorunOnOff, UninstallString,,\"rundll32 setupapi, InstallHINFSection DefaultInstall 132 %17%\primer.INF"
[INFcopy]
primer.INF
[DestinationDirs]
INFcopy = 17
[SourceDisksFiles]
primer.INF = 55
[SourceDisksNames]
55 = %DISKNAME%, , 1
;Описывает переменные, используемые в INF-файле
[Strings]
PATH = "SYSTEM\CurrentControlSet\Services\Cdrom"
DISPLAY = "SOFTWARE\Microsoft\Windows\CurrentVersion\Uninstall\"
NAME_ON = "Восстановить автоматический запуск дисков"
NAME_OFF="Отключить автоматический запуск дисков"
DISKNAME = "parad0x-des1Gn"
Диалог установки компонентов Windows
Отдельной частью окна Установка и удаление программ является диалог Установка компонентов Windows, который вызывается нажатием соответствующей кнопки. Как правило, данный диалог включает в себя сведения не обо всех компонентах Windows, доступных на компьютере. Например, с его помощью нельзя удалить с компьютера стандартные игры, такие как Сапер или Паук. Это происходит потому, что по умолчанию возможность удаления или установки игр скрыта из диалога установки компонентов Windows. Список содержимого диалога Установка компонентов Windows описывается в файле sysoc.INF, расположенном в каталоге %systemroot%\INF. Данный файл включает в себя блок INF-файла [Components]. Блок содержит наборы строк, определяющих, будет ли отображаться в диалоге отдельный компонент операционной системы Windows XP. Строки имеют следующий формат:
идентификатор»=«библиотека для работы компонентов», «функция библиотеки», «INF-файл, описывающий компоненты»,«отображение компонентов»,«номер»
Следующие элементы являются наиболее важными.
■ INF-файл, описывающий компоненты — описывает разделы, отображаемые в диалоге Установка и удаление программ. Именно такой INF-файл сейчас и будет создан.
■ Отображение компонентов — если в данном поле будет стоять слово HIDE, то данный компонент не будет отображаться в диалоге дополнительных компонентов Windows. Чтобы компонент отображался в диалоге, необходимо чтобы это поле было пустым.
■ Например, чтобы добавить в диалог компонентов возможность удаления игр, необходимо в строке, начинающейся с идентификатора games, удалить строку HIDE.
На рис. 15.2 показан пример содержимого этого файла.
Рис. 15.2 .Содержимое файла sysoc.INF
Другой возможностью является добавление в данный диалог своих компонентов. Для этого необходимо сначала создать INF-файл, описывающий новые компоненты, а потом создать в файле sysoc.inf ссылку на созданный INF-файл. Сначала посмотрим на простой пример INF-файла. В этом примере сразу создается корневой раздел, отображаемый непосредственно в диалоге установки компонентов Windows, два вложенных в этот раздел подраздела, а также еще два раздела, которые и будут устанавливать или удалять компоненты. В нашем случае эти разделы будут просто скрывать (или отображать, в зависимости от состояния флажка) версию Windows на Рабочем столе, а также скрывать (или отображать) название значка Мой компьютер.
[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 = Варианты настройки конфигурации компьютера
Интервал:
Закладка: