Четыре файла: EVCConf.inf, ConvEnum.sys, ConvDll.dll, Serial.sys представляют собой
инсталяционный пакет для работы с конвертером производства ЭВС под
управлением Windows 2000 и Windows XP.

EVSConv.inf - инсталляционный файл.

ConvEnum.sys представляет собой драйвер для обнаружения и чтения
параметров конвертеров, установленных в машине (плат конвертеров
может быть несколько).

ConvDll.dll - библиотека, которая экспортирует две функции для
проверки из программы наличия конвертеров и чтения их параметров.

Serial.sys - драйвер последовательного порта (не копируется в системный каталог,
но файл с этим именем должен быть в дистрибутиве, чтобы инсталлятор не
задавал лишних вопросов).

При инсталляции файлы ConvEnum.sys и ConvDll.dll копируются
в системные каталоги и делаются необходимые записи в реестр.

После установки платы конвертера в слот компьютера и обнаружения нового устройства
для установки драйвера следует указать файл EVSConf.inf.


Описание функций динамической библиотеки ConvDll.dll.

// Структура информации о конвертерах
typedef struct CONV_INFO
{
    DWORD   ComNum;           // Номер Com-порта
    DWORD   State;            // Состояние Com-порта(0-свободен, 1-занят)                 
    DWORD   BaseAddress;      // Базовый адрес 
    DWORD   Interrupt;        // Прерывание 
    
} CONV_INFO_;

typedef CONV_INFO *PCONV_INFO; 

//Описание экспортируемых функций.
int GetConverters(PCONV_INFO* pCnvInfo);
int GetConvError(void);

Функция GetConverters возвращает количество присутствующих в системе
конвертеров. В случае если возвращается не ноль, то функция заполняет 
массив указателей структур, описанных выше, переданный из основной программы.
Размерность массива равна в этом случае количеству конвертеров.

Если функция возвращает ноль, то с помощью второй функции GetConvError()
можно выяснить код ошибки.

Заданные коды ошибки:
0 - все хорошо,
1 - не запущен драйвер,
2 - драйвер запущен, но, видимо поврежден,
3 - нет плат конвертера,
4 - некоторые платы не зарегистрированы в системе с помощью инсталлятора.

Код ошибки 4 выдается, если не все платы конвертеров проинсталлированы.
При этом функция GetConverters выдает количество всех плат, но в поле
номера COM-порта непроинсталлированной платы будет выдан 0.

При кодах ошибки 0,1 и 4 вам следует запустить инсталлятор, а при коде
ошибки 3 вставить вынутую плату или проверить контакты.

В каталоге Examples приведены примеры вызова библиотечных функций на С++
и Delphi. В примере на С++ в проект включена библиотека импорта ConvDll.lib,
которая прилинковывается статически. Раздел на Delphi содержит два примера
вызова библиотеки: статический и динамический. Второй вызов является более
предпочтительным, так как можно в программе отследить наличие самой 
библиотеки.

