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

Установщик классов по умолчанию для устройств с неподвижными образами ,sti_ci.dll, распознает специальный набор записей INF-файла. В INF-файле эти записи должны быть помещены в раздел INF DDInstall устройства. Записи описаны в следующей таблице.

Запись в INF-файле Значение Комментарии
SubClass StillImage Обязательно
DeviceType 1 для сканеров, 2 для камер, 3 для видеоустройств Обязательно
DeviceSubType Определенное поставщиком значение Необязательно
Подключение Для устройств без PnP, подключенных к последовательным или параллельным портам, это может быть последовательный или параллельный, чтобы ограничить выбор портов пользователем во время установки. Необязательный элемент.
Если не указано, пользователь может выбрать любой последовательный или параллельный порт.
Возможности Указывает число, которое преобразуется в битовые флаги, определяющие возможности устройства. Эти флаги хранятся в реестре и доступны компонентам Microsoft STI со структурой STI_DEV_CAPS .

Бит 0 — задает и очищает STI_GENCAP_NOTIFICATIONS в STI_DEV_CAPS
Бит 1 — задает и очищает STI_GENCAP_POLLING_NEEDED в STI_DEV_CAPS
Бит 2 — задает и очищает STI_GENCAP_GENERATE_ARRIVALEVENT в STI_DEV_CAPS
Бит 3 — устанавливает и очищает STI_GENCAP_AUTO_PORTSELECT в STI_DEV_CAPS
Необязательно
PropertyPages Определяет имя и точку входа библиотеки DLL, которая создает настраиваемые страницы листов свойств для устройств с изображением.
В следующем примере определяется библиотека DLL, estp2cpl.dllи точка входа EnumStiPropPages в этой библиотеке DLL. Имя точки входа является необязательным; Если этот параметр опущен, точка входа по умолчанию использует enumStiPropPages.

PropertyPages = estp2cpl.dll, EnumStiPropPages

Необязательно
DeviceData Определяет раздел данных, предоставленный поставщиком, содержащий сведения, которые будут храниться в реестре, в разделе DeviceData . Для устройств, поддерживаемых TWAIN, раздел данных должен содержать запись TwainDS . Дополнительные сведения см. в разделе Изменяемые поставщиком значения реестра. Необязательный элемент.
Однако эта запись необходима для создания приложений, поддерживающих Push-Model.
События Идентифицирует предоставленный поставщиком раздел данных с описанием событий устройства с изображением. Каждая запись в этом разделе должна иметь следующий формат:

EventName="String",{GUID},App

EventName — внутреннее имя события, String — это отображаемая строка события, GUID — это GUID события, см. статью События устройства с изображением, а приложение указывает приложение для создания образа, которое будет запущено при возникновении события. Чтобы запустить зарегистрированное приложение, используйте звездочку (*) для приложения.
Необязательный элемент.
Однако эта запись необходима для создания приложений, поддерживающих Push-Model.
UninstallSection Указывает на раздел INF, который обычно содержит директивы INF DelFiles и ДИРЕКТИВы INF DelReg. Запись в этом разделе имеет следующий формат:

UninstallSection=UninstallSectionName

UninstallSectionName — это имя раздела, содержащего директивы Delfile илиDelReg . Защита файлов Windows может запретить пользователю удалять некоторые файлы, даже если они указаны с помощью директив DelFiles .
Необязательный элемент.
Эта запись действительна только для Windows 2000.

Установщик классов по умолчанию для устройств с неподвижными образами поддерживает стандартную директиву INF CopyFiles. Установщик использует внутренний счетчик ссылок для файлов компонентов, поэтому файлы, совместно используемые несколькими устройствами, не удаляются преждевременно во время операции удаления.

Inf-файл по умолчанию для устройств с неподвижным образом sti.inf определяет два раздела установки для каждого типа устройства следующим образом:

  • Раздел INF DDInstall, на который необходимо ссылаться в разделе DDInstall предоставленного поставщиком INF-файла, как показано в следующей таблице.

    USB-устройства; Устройства SCSI Последовательные устройства
    Include=sti.inf

    Needs=STI.USBSection
    Include=sti.inf

    Needs=STI.SCSISection
    Include=sti.inf

    Needs=STI.SerialSection
  • Раздел INF DDInstall.Services, на который необходимо ссылаться в DDInstall. Раздел Services в предоставленном поставщиком INF-файле, как показано в следующей таблице.

    USB-устройства; Устройства SCSI Последовательные устройства
    Include=sti.inf

    Needs=STI.USBSection.Services
    Include=sti.inf

    Needs=STI.SCSISection.Services
    Include=sti.inf

    Needs=STI.SerialSection.Services

Если вы также создаете компоненты для конкретных устройств для API получения образов, имена файлов для этих компонентов обычно включаются в INF-файл.

Дополнительные рекомендации по созданию INF-файлов для устройств с неподвижными образами можно найти в любом INF-файле, предоставленном в Windows, который содержит запись "Subclass=StillImage".

Комментарии

При разработке INF-файла для сканеров можно использовать дескрипторы ОС Майкрософт , чтобы включить функции идентификатора совместимости. При этом вы разрешаете один драйвер сканера быть совместимым с несколькими моделями сканера.