Информационный сайт

 

Реклама
bulletinsite.net -> Книги на сайте -> Программисту -> Агуров П.В. -> "Интерфейсы USB. Практика использования и программирования" -> 80

Интерфейсы USB. Практика использования и программирования - Агуров П.В.

Агуров П.В. Интерфейсы USB. Практика использования и программирования — СПб.: БХВ-Петербург, 2004. — 576 c.
ISBN 5-94157-202-6
Скачать (прямая ссылка): interface2004.djvu
Предыдущая << 1 .. 74 75 76 77 78 79 < 80 > 81 82 83 84 85 86 .. 166 >> Следующая

10.4.1. Структура INF-файла
Инсталляционный INF-файл поделен на секции, каждая из которых начинается с идентификатора (имени секции), заключенного в квадратные скобки. Часть секций является обязательной, присутствие других секций зависит от назначения драйвера. Порядок следования секций не играет роли, важно лишь, чтобы секции имели корректные имена и были правильно соотнесены в перекрестных ссылках. Секция продолжается до начала следующей секции или до обнаружения конца файла.
Имя секции не должно содержать более 28 символов для Windows Эх и более 255 символов для Windows NT/2000/XP. Имя секции может содержать про-
Глава 10. Спецификация PnP для USB
235
белы, если ссылка на такую секцию заключена в кавычки, однако лучше ограничиваться именами без пробелов.
Записи внутри каждой секции описывают некоторые действия либо ссылаются на другие секции. Запись в секции представляет строку формата entry = value[, value[ ,value...]]
где entry является ключевым словом, либо маркером (ссылкой на значение; такие ссылки заключаются в знаки %...%). В операционных системах Windows 9х все запятые должны присутствовать в количестве, указанном в документации, а в секциях Windows NT замыкающие перечисление запятые можно опускать, если сами значения опущены.
Символ "точка с запятой" означает в следующей за ним позиции начало комментариев, которые продолжаются до конца строки. Исключение составляют строки, в которых символ "точка с запятой", заключен в кавычки. Комментарии не принимаются в рассмотрение при анализе файла.
При необходимости продолжить запись на следующей строке в последней позиции текущей строки ставится знак "обратный слэш" (\).
10.4.2. Секция Version
Секция version содержит основную информацию о INF-файле. Рассмотрим значения ключей этой секции:
? signature = "signature-name" — описывает версию Windows, для которой применим этот INF-файл. Значение ключа не зависит от регистра, но должно точно соответствовать указанной ниже записи строк (знаки "$" в начале и конце строки обязательны).
• "$windows nt$" — операционные системы NT;
• "$windows 95$" — системы Windows Эх;
• "$chicago$" — любая версия Window;
? class = class-name — описывает тип устройства. Значение может быть одной из стандартных строк. Следует отметить, что если значение class из INF-файла не совпадает со значением, переданным устройством, INF-файл все равно будет считаться правильным, а система установит устройство согласно значению из INF-файла.
Если указывается новый тип устройства, должен быть указан ключ ciassGuid, содержащий GUID нового типа устройства (см. табл. 10.1). Длина значения ключа class не может превышать 32 символа; G CiassGuid = {nnnnnnnn-nnnn-nnnn-nnnn-nnnnnnnnnnnn} — описывает GUID типа устройства (табл. 10.1). Обязательно указывается для нового типа устройства;-
236
Часть III. Практика программирования
? Provider = %iNF-creator% — содержит имя компании-разработчика INF-файла;
? DriverVer = mm/dd/yyyy[,x.y.v. z] — это информация о версии драйвера, устанавливаемого INF-файлом. Поле mm/dd/yyyy указывает дату драйвера, а необязательные параметры x,y,v,z — версию драйвера.
Если версия драйвера указывается, то каждая цифра должна быть в диапазоне от 0 до 65 535. Следует учитывать, что в версиях Windows ME, 2000 и XP это значение не учитывается при установке драйвера и служит только для отображения версии в Менеджере устройств (Device Manager). А в Windows XP SPl, Windows Server 2003 и более поздних версиях это значение учитывается программой установки драйвера.
При установке или переустановке драйвера Windows сравнивает дату уже установленного драйвера и всех подходящих INF-файлов и выбирает наиболее новый (кроме Windows 98/МЕ, которые не учитывают дату при установке драйверов). Если ключ DriverVer не указан, система считает дату как оо/оо/оооо. Таким образом, файлы без этого ключа автоматически считаются наиболее старыми.
Таблица 10.1. Некоторые значения ключей class и ciassGuid секции version
Имя Описание GUID
HIDClass HID устройства (7 45al7a0-7 4d3-lld0-b6fe-00a0c90f57da}
Ports Порты (COM и LPT) I4d36e978-e325-llce-bfcl-08002bel0318}
Image Цифровые камеры, сканеры и т. д. і 6bddlfc6-810f-lld0-be'c7-08002be2092f}
Multifunction Многофункциональные устройства, такие, как PCMCIA-модемы или сетевые адаптеры I4d36e971-e325-llce-bfcl-08002bel0318}
System Системные устройства I4d36e97d-e325-llce-bfcl-08002bel0318}
USB Хост-контроллер USB, хабы, но не USB-периферия {36fc9e60-c4 65-llcf-8056-444553540000}
NoDriver Драйвер отсутствует {4d3 6e97 6-e325-llce-bfcl-08002bel0318>
Unknown Другие устройства (4d3 6e97e-e3 25-llce-bfcl-08002be!0318}
Глава 10. Спецификация PnP для USB
237
10.4.3. Секция Manufacturer
Секция Manufacturer описывает производителя одного или более устройств, устанавливаемых INF-файлом.
Секция имеет следующий формат:
[Manufacturer] manufacturer-identifier [manufacturer-identifier] [manufacturer-identifier]
Каждый ключ секции содержит информацию, описывающую одну модель устройства, и должен располагаться на отдельной строке. Допустимо использование одного из следующих форматов:
Предыдущая << 1 .. 74 75 76 77 78 79 < 80 > 81 82 83 84 85 86 .. 166 >> Следующая
Реклама
Авторские права © 2009 AdsNet. Все права защищены.
Rambler's Top100