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

Он позволяет осуществить:
* Создание элементов реестра
* Определение инициализационных параметров (INI-settings)
* Копирование файлов с дистрибутива и размещение их в системе
* Инсталляция устройств
* Управление другими INF-файлами
* Конфигурирование опций устройств
INF-файлы представляют собой инициализационные файлы, которые конфигурируют устройство или приложение в вашей системе и задают его элементы в реестре. INF-файлы обычно поставляются производителем продукта вместе с устройством или приложением. Кроме того, можно их найти на электронных досках объявлений и других on-line сервисах. INF-файлы понадобятся вам для многих обычных (не РnР) устройств, которые вам нужно будет конфигурировать для работы с Windows 95. Как правило, INF-файлы включают список допустимых логических конфигураций, имена файлов драйверов устройств и г. д. В ряде случаев вам потребуется самим писать INF-файлы для устройств или программного обеспечения. Формат INF-файлов аналогичен формату 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
(работает в REALMODE)	sav 	Позволяет появляться заставке при работающих программах DOS. Настройка по умолчанию
ALTENTER 	аеn 	Позволяет использовать клавиатурную комбинацию Alt+Enter для переключения между полноэкранным и оконным режимами. Настройка по умолчанию.
ALTESC 	Aes 	Позволяет использовать выход с помощью клавиатурной комбинации Alt-Esc. Настройка по умолчанию.
ALTPRTSCRN 	Psc 	Позволяет выполнять моментальный снимок экрана с помощью клавиатурной комбинации Alt + Print Screen. Настройка по умолчанию.
ALTSPACE 	aps 	Позволяет использовать клавиатурную комбинацию Alt+Space для отображения системного меню. Настройка по умолчанию.
ALTTAB 	Ata 	Позволяет использовать клавиатурную комбинацию Alt+Tab для переключения между приложениями. Настройка по умолчанию.
BACKGROUND 	win 	Дает приложению указание работать в фоновом режиме. Настройка по умолчанию.
CDROM
(работает в REALMODE)	cdr 	Позволяет использовать драйвер MSCDEX. Настройка по умолчанию.
CLOSEONEXIT 	cwe 	Закрывает при выходе окно DOS. He является настройкой по умолчанию.
CRTLESC 	ces 	Позволяет закрывать приложение нажатием клавиатурной комбинации Ctrl+Esc. Настройка по умолчанию.
DETECTIDLE 	dit 	Задает чувствительность в неактивном состоянии. Настройка по умолчанию.
DISKLOCK
(работает в REALMODE)	dsk 	Позволяет осуществлять прямой доступ к диску.
EMS
(работает в REALMODE)	ems 	Активизирует EMS386 для программ DOS. Настройка по умолчанию.
EMSLOCKED 	eml 	Указывает на блокировку памяти EMS
EMULATEROM 	emt 	Указывает на необходимость использования быстрой эмуляции ROM. Настройка по умолчанию.
EXCLUSIVE 	exc 	Работает в эксклюзивном режиме. Этот параметр игнорируется.
FASTPASTE 	aft 	Активизирует быструю вставку из приложения. Настройка по умолчанию.
GLOBALMEM 	gmp 	Активизирует глобальную защиту памяти
LOWLOCKED 	lml 	Указывает на то, что нижняя память (до 640 Кб) заблокирована. Этот параметр игнорируется.
MOUSE
(работает в REALMODE)	mse 	Активизирует функции мыши. Настройка по умолчанию.
NETWORK
(работает в REALMODE)	net 	Разрешает программе DOS получать доступ к сетевым дискам и принтерам. Настройка по умолчанию.
PRIVATECFG
(работает в REALMODE)	cfg 	Позволяет программе DOS использовать персональный файл CONFIG.SYS. He является настройкой по умолчанию.
REALMODE 	dos 	Запускает программу в реальном режиме DOS. He является настройкой по умолчанию.
RETAINVRAM 	rvm 	Дает указание сохранить видеопамять. Этот параметр игнорируется.
UNIQUESETTINGS 	uus 	Запускает программы DOS в отдельных DOS-сеансах. Не является настройкой по умолчанию.
USEHMA 	hma 	Дает указание использовать НМА (верхние адреса памяти). Значение по умолчанию.
VESA
(работает в REALMODE)	vsa 	Дает программам DOS получать доступ к продвинутым графическим возможностям.
WINDOWED 	win 	Запускает приложение в окне, а не в полноэкранном режиме. Настройка по умолчанию.
WINLIE 	lie 	Не позволяет программам DOS обнаруживать W95. Не является параметром по умолчанию.
XMSLOCKED 	Xml 	Дает указание блокировать память XMS.
В файле APPS.INF доступны, но не реализованы следующие параметры:
* DISPLAYTBAR (dtb) - Отображает панель инструментов.
* EXCLMOUSE (exm) - Разрешает режим монопольного использования мыши
* QUICKEDIT (qme) - Активизирует для мыши режим быстрого редактирования
* WARNIFACTIVE (wia) - Позволяет подавать предупреждения, если приложение DOS еще активно
== Справочник по разделам ==
В нижеприведенных таблицах описаны все ключевые слова и значения, ассоциированные с конкретными разделами.
=== [Version] ===
Синтаксис раздела [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]
 "manufacturer" %string_value%=manufacturer_section
Информация раздела [Manufacturer]
Ключевое слово 	Описание
"manufacturer" 	Имя производителя этого устройства, заключенное в кавычки. Сюда можно включить любую строку. Это ключевое слово является необязательным.
%string_value% 	Указывает имя строки, включенной в раздел Stings INF-файла. Строки должны быть заключены в символы процента (%).
manufacturer_section	Указывает на раздел Manufacturer Name в INF-файле.
=== [Manufacturer Name] ===
Раздел [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] ===
Ниже приведен образец синтаксиса раздела [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]	[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] ===
Ниже приведен пример синтаксиса раздела [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] ===
Ниже приведен пример синтаксиса раздела [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]. Имя раздела [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]. Раздел [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] ===
Ниже приведена синтаксическая конструкция раздела [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] позволяет добавлять в реестр ключи и значения. Кроме того, существует необязательная возможность установить фактическое значение. Имя раздела [add_registry_section] должно быть задано элементом AddReg раздела [Install]. Синтаксис раздела выглядит следующим образом:
 [add_registry_section]
 reg_root_string
В этот раздел вы можете включить подключи, имена значений и (необязательно) сами значения.
=== [Delete Registry] ===
Раздел [Delete Registry] используется для удаления из реестра подключен и имен значений. Синтаксис этого раздела выглядит следующим образом:
 [del_registry_section]
 reg_root_string,subkey
Имя этого раздела должно быть указано элементом DelReg в разделе [Install]. Каждый элемент, включенный в этот раздел, удалит из реестра подключ или значение.
=== [Ini to Registry] ===
Раздел [Ini to Registry] позволяет перемещать в реестр строки и разделы из INI-файла. Эта операция или создает в реестре новый элемент, или подключ или значение.
Имя раздела [ini_to_registry section] должно быть указано элементом lni2Reg в разделе [Install].
=== [DestinationDirs] ===
Раздел [DestinationDirs] позволяет определить каталог назначения для раздела [File_List]. Ссылка на имя раздела [DestinationDirs] должна присутствовать в одном из следующих трех элементов раздела [Install]: DelFiles, CopyFiles или RenFiles. Синтаксис раздела приведен ниже.
Более подробную информацию можно найти в таблице.
 [DestinationDirs]
 file_list=ldid,subdirectory
 DefaultDestDir=ldid,subdirectory
Ключевое слово	Значение 	Описание
file_list 	ldid,subdirectory	Указывает имя раздела FileList.
file_list 	subdirectory 	Указывает каталог, находящийся в каталоге ldid. Это значение необязательно.
file_list 	ldid 	Указывает логический идентификатор диска. Список допустимых значений ldid приведен далее.
DefaulDestDir 	ldid,subdirectory	Позволяет указать каталог-приемник по умолчанию для всех неупомянутых разделов File_List. Этот параметр не является обязательным. По умолчанию W95 использует каталог LDID_WIN.
=== [SourceDisksFiles] ===
Раздел [SourceDisksFiles] используется для указания исходных файлов, используемых в процессе инсталляции. Кроме того, с помощью этого раздела можно указать исходные диски, содержащие эти файлы. Синтаксис раздела очень прост:
 [SourceDisksFiles]
 name_of_source_disk=disk_number
Элемент disk_number определяется в разделе [SourceDisksNames], который использует следующий синтаксис:
 [SourceDisksNames]
 disk_ordinal=description_of_disk,label,serial_number
=== [ClassInstall] ===
Раздел [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
=== [Strings] ===
Наконец, последним разделом 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
ID: 04540
Category:Разработка приложений
Category:Справочники