Sources
Delphi Russian Knowledge Base
DRKB - это самая большая и удобная в использовании база знаний по Дельфи в рунете, составленная Виталием Невзоровым

Что делает inf-файл?

01.01.2007

Он позволяет осуществить:

  Создание элементов реестра

  Определение инициализационных параметров (INI-settings)

  Копирование файлов с дистрибутива и размещение их в системе

  Инсталляция устройств

  Управление другими INF-фаилами

  Конфигурирование опций устройств

INF-файлы представляют собой инициализационные файлы, которые конфигурируют

устройство  или приложение в вашей системе и задают его элементы в реестре.

INF-файлы  обычно поставляются производителем продукта вместе с устройством

или  приложением. Кроме того, можно их найти на электронных досках объявле-

ний и других on-line сервисах. INF-файлы понадобятся вам для многих обычных

(не  РпР)  устройств,  которые вам нужно будет конфигурировать для работы с

Windows  95.  Как  правило, INF-файлы включают список допустимых логических

конфигураций,  имена  файлов драйверов устройств и г. д. В ряде случаев вам

потребуется самим писать INF-файлы для устройств или программного обеспече-

ния. Формат lNF-файлов аналогичен формату INIфайлов, которые использовались

в Windows З.х, включая квадратные скобки, ключи и разделы, используемые то-

лько Windows 95.

Структура INF-файла

Когда  вы  инсталлируете новое устройство. Windows ищет INF-фаилы для этого

устройства, используя при этом идентификатор устройства (device ID). Собрав

из  INF-фаила всю необходимую информацию, система создает в реестре элемент

для  этого  устройства под ключом HKEY_LOCAL_MACHINE. Значения из INF-файла

копируются  в  элемент  реестра, соответствующий драйверу устройства. Такие

значения,  как  DevLoader=  и  Driverdesc= включаются в элемент аппаратного

драйвера Driver=. Элемент Еnum содержит значения Driver= и ConfigFlags=.

INF-фаилы представляют собой файлы в формате ASCII, состоящие из нескольких

разделов.  Каждый  раздел  предназначен для выполнения определенной задачи.

Имена  разделов  обычно  заключаются в квадратные скобки. Типичные элементы

представляют  собой ключ и значение, соединенные знаком равенства. В раздел

можно  включить  одно или несколько значений. Кроме того, в состав элемента

можно включать комментарии, отделяя их символом точки с запятой, например:

[section]

keyname=value ;эта часть строки является комментарием

Поскольку  INF-файлы  являются  файлами  формата ASCII, должен существовать

способ,  с  помощью  которого  они будут предоставлять реестру информацию в

двоичном  формате. Структура INF определяет двоичный файл, который преобра-

зует ASCII-текст в двоичный формат при чтении его реестром.

Типы информационных файлов:

  Layout  (Формат). Определяет информацию о диске и номере версии, а также

содержит  список всех файлов с указанием диска, на котором они располагают-

ся.

  Selective  Install (Избирательная инсталляция). Определяет части инстал-

ляции,  являющиеся необязательными компонентами, а также те ее части, кото-

рые зависят от инсталляции других компонентов. Например, Microsoft Fax тре-

бует предварительной загрузки Microsoft Exchange. Вы имеете возможность уп-

равлять инсталляцией компонент этих типов.

  Application/Installation, APPS.INF (Приложения/Инсталляция). Обнаружива-

ет  используемые  вами  приложения MS-DOS и устанавливает для них параметры

окружения. Эти lNF-файлы содержат настройки и параметры для многих приложе-

ний  DOS. Как правило, это самый большой информационный файл в вашей систе-

ме. В его состав входят многие виды настройки памяти, настройки расширенной

памяти (XMS), а также другие параметры, которые в Windows З.х содержались в

настройках PIF

  Device  Installation  and Configuration (Инсталляция и конфигуриро вание

устройств).  Это наиболее общий из всех информационных файлов на котором мы

до  сих пор концентрировали все внимание. Эти файлы описывают параметры на-

стройки для конкретных физических устройств. Если вы имеете драйвер устрой-

ства  ранних  версий, в INF-файле будет содержаться информация об этом уст-

ройстве.  Устройства Plug and Play, с другой стороны, помещают информацию о

себе прямо в реестр.

Общая организация lNF-файла

Раздел каждого устройства в INF-файлс состоит из следующих разделов:

Раздел  [Version].

Идентифицирует  INF и класс поддерживаемого устройства.

Ниже перечислен список некоторых устройств, которые вы можете включить:

adapter                 keyboard        NetService

CDROM                   MCADevices      NetTrans (сетевые транспорты)

diskdrive               media           nodriver

dispaly                 modem           PCMCIA

EISADevices             monitor         ports

Fdc                     mouse           printer

Hdc                     MTD             SCSIAdapter

Раздел [Manufacturer].

Идентифицирует  производителя  устройства (например, Link, Micro, и т.п.) и

соответствующих  продуктов.  Каждый  INF-файл  должен иметь по крайней мере

один раздел [ Manufacturer].

Раздел [Install].

Содержит информацию о физических атрибутах устройства и его драйверах.

Раздел [Classlnstall].

Этот раздел необязателен. Он идентифицирует новый класс для указанного уст-

ройства в INF-фаиле

Раздел [String].

Идентифицирует локализованные строки в INF-фаиле

Раздел [Miscellaneous].

Содержит  информацию о том, как устройства управляются пользовательским ин-

терфейсом W95.

Элементы APPS.INF

В  разделе  [appname]  файла  APPS.INF вы найдете элементы, перечисленные в

табл.  Используя  эти элементы вы сможете быстрее перенести в W95 настройки

PIF из ваших старых инсталляций Windows.

Многие  из  приложений,  перечисленных в файле APPS.INF, представляют собой

старые игры для MS-DOS. Если вы сталкиваетесь с тем, что игра не работает в

среде  W95, просмотрите этот файл. Возможно, вам удастся модифицировать ка-

кой-либо  из  его элементов таким образом, чтобы игра запустилась или стала

работать  лучше. Если вы вносите изменения в файл APPS.INF, вам потребуется

перезагрузить W95, чтобы внесенные изменения попали в реестр. Помимо редак-

тирования  файла  APPS.INF, некоторые из параметров вы можете изменить, от-

крыв страницу свойств конкретного приложения.

Ниже приведен пример раздела [аррname]:

[PRODIGY.EXE]

LowMem=440

EMSMen=None

XMSMem=None

Enable=lml

Disable=win,hma

В этой части файла APPS.INF раздел [appname] замещается именем исполняемого

модуля, например, PRODIGY.EXE, PARADOX.EXE и т.п.

Имя элемента реестра           Описание ключа                       Значение

ALLOWSSAVER              Позволяет появляться заставке              sav

(работает в REALMODE)    при работающих программах DOS.

                        Настройка по умолчанию

ALTENTER                 Позволяет использовать клавиатурную        аеn

                        комбинацию + для переклю-

                        чения между полноэкранным и оконным

                        режимами. Настройка по умолчанию.

ALTESC                   Позволяет использовать выход с помощью     Aes

                        клавиатурной комбинации -.

                        Настройка по умолчанию.

ALTPRTSCRN               Позволяет выполнять моментальный снимок    Psc

                        экрана с помощью клавиатурной комбинации

                        +. Настройка по умолчанию.

ALTSPACE                 Позволяет использовать клавиатурную        aps

                        комбинацию + для отображения

                        системного меню. Настройка по умолчанию.

ALTTAB                   Позволяет использовать клавиатурную ком-   Ata

                        бинацию для переключения между приложе-

                        ниями. Настройка по умолчанию.

BACKGROUND               Дает приложению указание работать в        win

                        фоновом режиме. Настройка по умолчанию.

CDROM                    Позволяет использовать драйвер MSCDEX.     cdr

(работает в REALMODE)    Настройка по умолчанию.

CLOSEONEXIT              Закрывает при выходе окно DOS. He явля-    cwe

                        ется настройкой по умолчанию.

CRTLESC                  Позволяет закрывать приложение нажатием    ces

                        клавиатурной комбинации +.

                        Настройка по умолчанию.

DETECTIDLE              Задает чувствительность в неактивном сос-   dit

                       тоянии. Настройка по умолчанию.

DISKLOCK                Позволяет осуществлять прямой доступ к      dsk

(работает в REALMODE)   диску.

EMS                     Активизирует EMS386 для программ DOS.       ems

(работает в REALMODE)   Настройка по умолчанию.

EMSLOCKED               Указывает на блокировку памяти EMS          eml

EMULATEROM              Указывает на необходимость использо-        emt

                       вания быстрой эмуляции ROM. Настройка

                       по умолчанию.

EXCLUSIVE               Работает в эксклюзивном режиме. Этот        exc

                       параметр игнорируется.

FASTPASTE               Активизирует быструю вставку из прило-      aft

                       жения. Настройка по умолчанию.

GLOBALMEM               Активизирует глобальную защиту памяти       gmp

LOWLOCKED               Указывает на то, что нижняя память          lml

                       (до 640 Кб) заблокирована. Этот параметр

                       игнорируется.

MOUSE                   Активизирует функции мыши. Настройка по     mse

(работает в REALMODE)   умолчанию.

NETWORK                 Разрешает программе DOS получать доступ     net

(работает в REALMODE)   к сетевым дискам и принтерам. Настройка

                       по умолчанию.

PRIVATECFG              Позволяет программе DOS использовать пер-   cfg

(работает в REALMODE)   сональный файл CONFIG.SYS. He является

                       настройкой по умолчанию.

REALMODE                Запускает программу в реальном режиме DOS.  dos

                       He является настройкой по умолчанию.

RETAINVRAM              Дает указание сохранить видеопамять.        rvm

                       Этот параметр игнорируется.

UNIQUESETTINGS          Запускает программы DOS в отдельных DOS-    uus

                       сеансах. Не является настройкой по

                       умолчаний.

USEHMA                  Дает указание использовать НМА (верхние     hma

                       адреса памяти). Значение по умолчанию.

VESA                    Дает программам DOS получать доступ к       vsa

(работает в REALMODE)   продвинутым графическим возможностям.

WINDOWED                Запускает приложение в окне, а не в         win

                       полноэкранном режиме. Настройка по

                       умолчанию.

WINLIE                  Не позволяет программам DOS обнаруживать    lie

                       W95. Не яаляется параметром по умолчанию.

XMSLOCKED               Дает указание блокировать память XMS.       Xml

В файле APPS.INF доступны, но не реализованы следующие параметры:

DISPLAYTBAR (dtb) Отображает панель инструментов.

EXCLMOUSE (exm)   Разрешает режим монопольного использования мыши

QUICKEDIT (qme)   Активизирует для мыши режим быстрого редактирования

WARNIFACTIVE (wia). Позволяет подавать предупреждения, если приложение

                   DOS еще активно

Справочник по разделам

В  нижеприведенных  таблицах описаны все ключевые слова и значения, ассоци-

ированные с конкретными разделами. Синтаксис раздела [Version] приведен ни-

же.  Квадратные  скобки используются для обозначения начала нового раздела.

Для  того чтобы настройки INF были понятны W95 и реестру, квадратные скобки

обязательно должны присутствовать.

[Version]

Signature=$CHICAGO$

Class=name_of_class

Provider=%File_creator%

LayoutFile=filename.inf

Ключевое слово Значение       Описание

Signature      $Chicago$    Задает операционную систему для INF-файла.

                           На момент написания большинства INF-файлов

                           кодовое название Windows 95 было следующим:

                           Chicago.

Class         name_of_class Указывает класс, который будет определен в ре-

                           естре. Список общих классов устройств, которые

                           вы можете ввести сюда, приведен в данном при-

                           ложении ранее.

LayoutFile     filename.inf Эта строка определяет имя INF-файла, содержа-

                           щего имена исходного диска и файлов, которые

                           должны быть включены для инсталляции этого

                           устройства. Если его не определить, то по умол-

                           чанию файл имеет имя LAYOUT.INF. Если вы не

                           включите эти данные в раздел Version, то должны

                           будете включить в файл APPS.INF разделы

                           SourceDiskName и SourceDiskFiles.

Синтаксис раздела [Manufacturer] приведен ниже.

[Manufacturer]

"manufacturer" %string_value%=manufacturer_section

Информация раздела [Manufacturer]

Ключевое слово          Описание

"manufacturer"          Имя производителя этого устройства, заключенное в

                       кавычки. Сюда можно включить любую строку. Это клю-

                       чевое слозо является необязательным.

%string_value%          Указывает имя строки, включенной в раздел Stings

                       INF-файла. Строки должны быть заключены в символы

                       процента (%).

manufacturer_section    Указывает на раздел Manufacturer Name в INF-файле.

Раздел [Manufacturer Name] включает описания устройства для указанного уст-

ройства  Ключевые  слова,  используемые  в этом разделе, описаны в таблице.

Синтаксис этого раздела выглядит следующим образом:

[name_of_manufacturer]

description of deviсe=install_section,ID_of_device[compatible_device_IDs,...]

Информация раздела [Manufacturer Name]

Ключевое слово           Описание

description_of_device      Описание инсталлируемого устройства.

install_section            Указывает имя раздела Install для этого устройства.

ID_of_device               Идентификатор (ID) инсталлируемого устройства.

[compatible_device_IDs,...] Содержит Ссылки на устройства, совместимые с

                           данным. В этот список можно включить несколько

                           устройств, разделив их запятыми.

Раздел [File List] можно использовать для указания файлов, которые вы хоти-

те скопировать, переименовать или удалить. В зависимости от элемента разде-

ла [Install] вы можете использовать три следующих синтаксических параметра:

[file_list section]

new_filename, old_filename

Эта  конструкция  используется для элементов RenFiles. Допускается вклююние

любого количества элементов new_filename, old_filename.

Для элементов DelFiles используется следующий синтаксис:

[file_list section]

filename

Параметр filename обозначает имя файла, который вы хотите удалить.

Для   элемента   CopyFiles   используется  следующий  синтаксис.  Параметры

source_filename и temporary_filename в этой конструкции являются необязате-

льными.

[file_list section]

destination_filename,source_filename,temporary_filename

Ниже  приведен  образец  синтаксиса раздела [Install]. Этот раздел включает

дополнительные  разделы  INF-файла, которые содержат описания устройства. В

правой части выражения, после знака равенства, можно указать несколько зна-

чений, разделенных запятыми.

[name_of_install_section]

LogConfig=section_name

Copyfiles=file_list_section

Renfiles=file_list_section

DelFiles=file_list_section

UpdateInis=UpdateIni_section_name

UpdateIniFields=UpdateIniFields_section_name

AddReg=AddRegitry_section

DelReg=DelRegitry_section

Ini2Reg=IniToRegistry_section

UpdateCfgSys=UpdateConfig_section

UpdateAutoBat=UpdateAutoexec_section

Reboot или Restart

Информация раздела [Install]

Ключевое слово             Значение         Описание

[name_of_install_section]                    Содержит имя устройства, соответ-

                                            ствующего информации, приведен-

                                            ной в этом разделе. В разделе

                                            ManufacturerName INF-файла дол-

                                            жна присутствовать ссылка на

                                            этот раздел

LogСonfig                section_name        Содержит информацию о разделах

                                            логической конфигурации уст-

                                            ройства. Значения section_name

                                            указывают на разделы INF-файла

                                            в которых содержится информа-

                                            ция о данном устройстве.

CopyFiles             file_list_section      Содержит информацию, необходимую

                                            для копирования указанного файла

                                            или файлов в каталог, указанный

                                            в разделе File_List. Вы можете

                                            дать системе указание скопировать

                                            отдельный файл. Для этого перед

                                            именем файла необходимо включить

                                            символ @. При этом файл будет

                                            скопирован в каталог

                                            DefaultDestDir, определенный в

                                            разделе DestinationDir INF-файла.

RenFiles             fiie_list_section       Позволяет переименовать указан-

                                            ный файл. Представляет собой

                                            указатель на раздел File_List

                                            INF-файла.

DelFiles             file_list_section       Позволяет удалить указанный

                                            файл. Представляет собой указа-

                                            тель на раздел FileList INF-файла.

UpdateInis          UpdateIni_section_name   Позволяет указать Значение INI-

                                            файла, которое вы хотите изме-

                                            нить через INF-файл. Представля-

                                            ет собой указатель на раздел

                                            Update INI.

UpdatelniFields UpdateIniFields_section_name Позволяет изменять, замещать

                                            или удалять отдельные элементы

                                            значений INI-файла (в отличие от

                                            предыдущего параметра, который

                                            изменял все значение целиком).

                                            Этот параметр представляет со-

                                            бой указатель на раздел Update

                                            IniFields.

AddReg                AddRegistry_section    Позволяет указать подключ или

                                            значение, которые требуется до-

                                            бавить в реестр. Представляет

                                            собой указатель на раздел Add

                                            Registry.

DelReg                Del_Registry_section   Позволяет указать подключ или

                                            значение, которые требуется уда-

                                            лить из реестра. Представляет

                                            собой указатель на раздел Delete

                                            Registry

Ini2Reg            IniToRegistry_section     Перемещает в реестр строки и

                                            разделы из INI-файла. Представ-

                                            ляет собой указатель на раздел

                                            Ini to Registry.

UpdateCfgSys        UpdateConfig_section     Содержит указатель на раздел

                                            Update Config. в этом разделе

                                            находятся команды, которые

                                            должны быть добавлены, удалены

                                            или переименованы в файле

                                            CONFIG.SYS.

UpdateAutoBat     UpdateAutoexec_section     Содержит указатель на раздел

                                            Update AutoExec. В этом разделе

                                            находятся команды, которые мо-

                                            дифицируют файл AUTOEXEC.BAT.

Reboot или Restart                           Команды, вызывающие перезапуск

                                            системы или перезагрузку ком-

                                            пьютера после завершения про-

                                            граммы установки.

Ниже  приведен  пример  синтаксиса  раздела [Logical Configuration]. Раздел

[LogConfig]  необходимо  указать  в разделе [Install]. Этот раздел содержит

информацию  о конфигурации системных ресурсов, включая IRQ, порты ввода/вы-

вода,  каналы  DMA и т. д. Для каждого включаемого элемента программа Setup

создает  запись  логической  конфигурации в двоичном формате и включает эту

информацию  в  реестр  в раздел driver. INF-файлы могут содержать несколько

(или ни одного) разделов [Logical Configuration]. Ключевые слова и значения

этого раздела описаны в таблице.

[LogConfig Section name]

ConfigPriority=value_of_priority

MemConfig=menory_range_settings

I/OConfig=ioport_settings

IRQConfig=irq_sectings

DMAConfig=dma_settings

Ключевое слово          Значение             Описание

ConfigPriority         value_of_priority     Содержит значение приоритета

                                            конфигурации для данного устрой-

                                            ства.

MemConfig          memory_range_settings     Указывает диапазон памяти для

                                            данного устройства.

I/OConfig           ioport_settings          Позволяет указать для устройства

                                            конфигурацию портов ввода/вывода.

IRQConfig            irq_settings            Содержит СПИСОК допустимых IRQ

                                            для данного устройства. Если

                                            устройство не использует IRQ,

                                            не следует включать эту

                                            строку в INF-файл.

DMAConfig             dma_settings           Указывает допустимые значения

                                            DMA для данного устройства.

Для параметров настройки, перечисленных в таблице, можно указывать не один,

а  несколько ресурсов. Однако, в процессе инсталляции будет использован то-

лько один из ресурсов, приведенных в списке. Чтобы указать несколько ресур-

сов  для  одного  устройства, вам потребуется создать соответствующее число

записей для каждого из ресурсов.

Ниже  приведен  пример  синтаксиса  раздела  [Update AutoExec]. Имя раздела

[UpdateAutoBat]  должно быть указано в разделе [Install]. Этот раздел соде-

ржит  команды, манипулирующие строками в файле AUTOEXEC.BAT. Ключевые слова

и значения этого раздела приведены в таблице.

[Update_autobat_section]

CmdDelete=command

CmdAdd=command

UnSet=environmentvariablename

PreFixPath=%ldid%

RemOldPath=%ldid%

TmpDir=%ldid%

Ключевое слово        Значение              Описание

CmdDelete               command         Указывает команду, которая должна

                                       быть удалена из файла AUTOEXEC.BAT.

                                       Эта строка обрабатывается перед

                                       строкой CmdAdd.

CmdAdd                  command         Указывает команду, которую требуется

                                       добавить в файл AUTOEXEC.BAT.

UnSet          environmentvariablename  Указывает переменную окружения, кото-

                                       рую вы хотите удалить из файла

                                       AUTOEXEC.BAT.

PreFixPath               %ldid%         Позволяет включить предопределенную

                                       фиксированную переменную path в форме

                                       логического идентификатора каталога

                                       (logical directory identificator, LDID).

RemOldPath               %ldid%         Позволяет указать путь, который должен

                                       быть удален из файла AUTOEXEC.BAT.

TmpDir                   %ldid%         Позволяет указать временный каталог на

                                       время установки.

Ниже  приведен  пример  синтаксиса  раздела  [Update  Config].  Имя раздела

[Update_config_section] должно быть задано в разделе [Install]. Этот раздел

содержит команды манипуляции со строками в файле CONFIG.SYS. Ключевые слова

и значения этого раздела описаны в таблице.

[Update_config_section]

DevRename=current_name,new_name

DevDelete=driver_name

DevAddDev=driver_name,configkeyword

Stacks=dos_stack_values

Buffers=dos_buffer_values

Files=dos_buffer_values

LastDrive=dos_lastdrive_value

Ключевое слово               Значение                 Описание

DevRename             current_name,new_name   Позволяет переименовать драйверы

                                             устройств, вызываемые из файла

                                             CONFIG.SYS. Раздел может содержать

                                             несколько строк DevRename.

                                             Записи DevRename обрабатываются

                                             первыми, прежде, чем начнется

                                             обработка каких-либо других

                                             записей раздела.

DevDelete               driver_name           Позволяет указать драйверы

                                             устройств, которые должны быть

                                             удалены из файла CONFIG.SYS.

                                             Раздел может содержать несколько

                                             записей DevDelete.

DevAddDev          driver_name,configkeyword  Позволяет указать новый драйвер,

                                             который должен быть добавлен в

                                             файл CONFIG.SYS. Раздел может

                                             содержать несколько записей

                                             DevAddDev.

Stacks            dos_stack_values            Указывает значение Stacks= в

                                             файле CONFIG.SYS.

Buffers           dos_buffer_values           Указывает значение Buffers= в

                                             файле CONFIG.SYS.

Files             dos_file_values             Указывает значение Files= в

                                             файле CONFIG.SYS.

LastDrive         dos_lastdrive_value         Указывает значение lastdrive=

                                             в файле CONFIG.SYS.

Ниже приведен пример синтаксиса раздела [Update INI]. Раздел [Update INI]

необходимо указать в разделе [Install] записью UpdateINIs. Этот

раздел добавляет, удаляет или замещает записи в указанном INI-фаЙле.

Ключевые слова и значения для этого раздела описаны в таблице.

[Update_ini_section]

ini-file,ini-section,original_entry,new_entry, options

Значение            Описание

options             Необязательные флаги операции, которые могут принимать

                   одно из следующих значений

  0                Значение по умолчанию. Ищет ключ (имя записи)

                   original_entry, игнорируя его значение. Если ключ при-

                   сутствует, соответствующая запись заменяется на

                   new_entry. Если original_entry равна NULL, new_entry

                   добавляется безусловно. Если new_entry равна NULL,

                   original_entry удаляется.

  1                Ищет запись original_entry по ключу и значению. Обнов-

                   ление выполняется только в том случае, когда совпадают и

                   ключ, и значение записи original_entry.

  2                Ищет запись, ключ которой совпадает с указанным в

                   original entry. Если запись уже существует, она не за-

                   мещается значением, указанным вами в new_entry.

  3                Ищет запись, ключ и значение которой совпадают с

                   указанными в original_entry. Если такая запись существует,

                   она замещается new_entry.

Ниже приведена синтаксическая конструкция раздела [Update IniFields].

Имя раздела [UpdatelniFields] должно быть указано элементом

[UpdatelniFieldsl в разделе [Install]. Утверждения этого замещают,

добавляют или удаляют поля в указанной записи INI-файла. В отличие от

раздела [Update INI], команды из данного раздела работают с фрагмента-

ми записей, а не с записями в целом.

[update_inifields_section]

ini-file,ini-section,profile_name,old_field,new_field

Если в строке INI-файла для указанной записи присутствовал комментарий,

он удаляется. Модификаторы old_field и new_field являются необяза-

тельными.

Раздел [Add Registry] позволяет добавлять в реестр ключи и значения.

Кроме того, существует необязательная возможность установить фактиче-

ское значение. Имя раздела [add_registry_section] должно быть задано

элементом AddReg раздела [Install]. Синтаксис раздела выглядит следую-

щим образом:

[add_registry_section]

reg_root_string

В этот раздел вы можете включить подключи, имена значений и

(необязательно) сами значения.

Раздел [Delete Registry] используется для удаления из реестра подклю-

чен и имен значений. Синтаксис этого раздела выглядит следующим обра-

зом:

[del_registry_section]

reg_root_string,subkey

Имя этого раздела должно быть указано элементом DelReg в разделе

[Install]. Каждый элемент, включенный в этот раздел, удалит из реестра

подключ или значение.

Раздел [Ini to Registry] позволяет перемещать в реестр строки и разде-

лы из INI-файла. Эта операция или создает в реестре новый элемент, или

подключ или значение.

Имя раздела [ini_to_registry section] должно быть указано элементом

lni2Reg в разделе [Install].

Раздел [DestinationDirsI позволяет определить каталог назначения для

раздела [File_List]. Ссылка на имя раздела [DestinationDirs] должна

присутствовать в одном из следующих трех элементов раздела [Install]:

DelFiles, CopyFiles или RenFiles. Синтаксис раздела приведен ниже.

Более подробную информацию можно найти в таблице.

[DestinationDirs]

file_list=ldid,subdirectory

DefaultDestDir=ldid,subdirectory

Ключевое слово       Значение             Описание

file_list             ldid,subdirectory    Указывает имя раздела FileList.

                     subdirectory         Указывает каталог, находящийся

                                          в каталоге ldid. Это значение

                                          необязательно.

                     ldid                 Указывает логический идентификатор

                                          диска. Список допустимых значений

                                          ldid приведен далее.

DefaulDestDir                              Позволяет указать каталог-приемник

                                          по умолчанию для всех неупомянутых

                                          разделов File_List. Этот параметр

                                          не является обязательным. По умол-

                                          чанию W95 использует каталог

                                          LDID_WIN.

Раздел [SourceDisksFilesj используется для указания исходных файлов,

используемых в процессе инсталляции. Кроме того, с помощью этого разде-

ла можно указать исходные диски, содержащие эти файлы. Синтаксис раз-

дела очень прост:

[SourceDisksFiles]

name_of_source_disk=disk_number

Элемент disk_number определяется в разделе [SourceDisksNames], кото-

рый использует следующий синтаксис:

[SourceDisksNames]

disk_ordinal=description_of_disk,label,serial_number

Раздел [ClassInstall] устанавливает новый класс устройства в разделе

реестра [Class]. Синтаксис раздела [ClassInstall] приведен ниже.

Подробную информацию о значениях и элементах, которые используются в

этом разделе, можно найти в таблице выше.

[ClassInstall]

CopyFiles=fils_list_section

RenFiles=fils_list_section

DelFiles=fils_list_section

UpdateInis=UpdateIni_section_name

UpdateIniFields=UpdateIniFields_section_name

AddReg=AddRegistry_section

DelReg=DelRegistry_section

Наконец, последним разделом INF-фаила является раздел [Strings]. Этот

раздел определяет один или несколько строковых ключей. Синтаксис этого

раздела приведен ниже.

[Strings]

string_key="valve"

Ключевое слово string_key обозначает строковый ключ, формирующийся

из буквенно-цифровых символов, например, MfgName. Хотя раздел

[Strings] обычно является последним в INF-файле, строковые ключи

можно использовать везде, где допустимо употребление строк.

Программа Setup подставляет вместо строкового ключа строку, заданную

элементом "value" и в дальнейшем использует именно ее, например:

MSFT="Microsoft"

Встпетив строку MSFT. поогоамма Setup интерпретирует ее как Microsoft

Значения LDID

В таблице перечислены допустимые значения LDID (logical disk identifier),

которые вы можете использовать в INF-файлах.

ID           Обозначает

00           Пустой LDID; используется для создания нового LDID

01           Исходное устройство:\путь

02           Временный каталог Setup; используется только в процессе

                                                    установки W95

03           Каталог Uninstall

04           Каталог Backup

10           Каталог Windows

11           Каталог SYSTEM

12           Каталог lOsubsys

13           Каталог COMMAND

14           Каталог Control Panel

15           Каталог Printers

16           Каталог Workgroup

17           Каталог INF

18           Каталог Help

19           Каталог Administration

20           Каталог Fonts

21           Каталог Viewers

22           Каталог VMM32

23           Каталог Color

25           Каталог Shared

26           Каталог Winboot

27           Машинно-зависимый каталог

28           Каталог Winboot Host

30           Корневой каталог загрузочного устройства

31           Корневой каталог хост-диска виртуального загрузочного устройства

32           Каталог с прежней версией Windows (если есть)

33           Каталог с прежней версией MS-DOS (если есть)DB