Файл с установочной информацией для Pocket PC является стандартным информационным файлом Windows с несколько редуцированной структурой. В файле могут быть находиться секции и ключи, описанные в следующем списке. Если рядом с ключом не указывается его описание, то значение ключа всегда будет таким, как указано в данном списке.

В начале файла располагается обязательная секция [Version].

? Ключ Signature может принимать значения $Windows NT$ или $Windows 95$.

? Ключ Provider позволяет указывать имя компании, которая создала приложение.

? Ключ CESignature принимает значение $Windows СЕ$.

Затем в файле располагается обязательная секция [CEStrings].

? Ключ AppName позволяет указывать имя приложения. Все входы переменной %AppName% в создаваемом inf-файле будут заменены на appname.

? Ключ InstallDir задает имя каталога установки на устройстве. Все входы переменной %InstallDir% в создаваемом inf-файле будут заменены на соответствующее значение.

В секции [Strings] разработчик может хранить любые необходимые строковые константы. А в секции [CEDevice] располагается информация о целевой платформе.

? Ключ ProcessorType содержит значение, которое возвращает фукция SYSTEMINFO. dwProcessorType.

? Ключ UnsupportedPlatforms позволяет указывать перечень несовместимых с программой платформ.

? Ключ VersionMin содержит значение, которое возвращается функцией OSVERSIONINF0.dwVersionMinor.

? Ключ VersionMax содержит значение, которое возвращается функцией OSVERSIONINFO.dwVersionMajor.

Также обязательно нужно использовать секцию [Defaultlnstall]. В этой секции определяются имена секций, которые должны использоваться для чтения настроек при копировании файлов, создании или редактировании ключей реестра и создании ярлыков. Те секции, которые не перечислены в этом разделе, не будут использованы, даже если они присутствуют в inf-файле. Обычно секция содержит от двух до пяти ключей.

? Copyfiles (обязательный ключ). Содержит названия секций, из которых осуществляется копирование файлов.

? AddReg (обязательный ключ). Содержит названия секций, содержащих записи, которые нужно внести в реестр.

? Ключ CEShortcuts = содержит названия секций, в которых описано расположение и параметры ярлыков, создаваемых на устройстве.

? Ключ CESetupDLL позволяет указывать имя и расположение библиотеки, в которой содержатся дополнительные функции, вызываемые во время установки.

? Ключ CESelfRegister содержит имена библиотек, которые должны быть зарегистрированы во время установки вызовом функции DllRegisterServer, после чего их регистрация может быть удалена при деинсталляции приложения вызовом функции DllllnregisterServer.

В обязательной секции [SourceDisksNames] описывается расположение устанавливаемого приложения. Ключ diskid позволяет указывать комментарий и путь к каталогу с файлами приложения. Путь может быть как абсолютным, так и относительным.

В обязательной секции [SourceDisksFiles] указывается, на каком диске и в каком каталоге этого диска размещены файлы вашего приложения. Для этого используется ключ filename.

В обязательной секции [DestinationDirs] указывается, в какие подкаталоги на устройстве будут помещены при установке файлы, собранные в группы в секции [CopyFiles]. Ключ DefaultDestDir указывает каталог для установки по умолчанию. Если никакой другой каталог не задан и файл не отнесен ни к одной из групп, то он будет помещен в этот каталог.

Обязательная секция [CopyFiles] содержит несколько секций, имена которых были объявлены в ключе CopyFiles секции [Defaultlnstall]. Каждая такая секция содержит один или несколько ключей destinationfilename,[sourcefilename],[,flags], где destinationfilename – имя файла при копировании на устройство при установке, sourcefilename – имя файла, который копируется (если destination filename и sourcefilename совпадают, то этот параметр указывать не обязательно). В параметре flags указываются константы из табл. 4.6.

Таблица 4.6. Константы копирования файлов

Имя обязательной секции [AddReg] должно быть таким, которое указано в ключе AddReg секции [Defaultlnstall]. В этой секции перечисляются ключи, которые надо добавить к реестру устройства при установке. Для этого используется строка registryrootstring, subkey, [valuename], flags, value [,value]. Параметр registry rootstrings может принимать одно из трех значений.

? HKCR – HKEYCLASSESROOT.

? HKCU – HKEYCURRENTUSER.

? HKLM – HKEY LOCAL MACHINE.

В параметре value_name указывается имя соответствующего параметра в реестре. А параметр flags может состоять из комбинации значений, приведенных в табл. 4.7. Таблица 4.7. Параметры записи ключей реестра

Секция [CEShortCuts] определяется в ключе CEShortCuts секции [DefaultInstall]. Она содержит строки следующего формата:

shortcut_filename,shortcut_type_flag,target_file/path[,standard_destination_path]

Перейти на страницу:

Похожие книги