Подключение к автомобилям из других программ

Для работы с автомобилем используются 2 библиотеки CEAgent.dll и CarApplet.dll (обе библиотеки размещаются в подкаталоге bin каталога установки SDK). Подвяжите эти 2 библиотеки к Вашему проекту.

Для подключения к автомобилю, получения и обработки данных в любой программе, не являющейся аплетом Check-Engine, предназначена библиотека CEAgent.dll. В классе CEAgent.Agent этой библиотеки реализованы статические методы для подключения к автомобилю и доступа к его данным. Библиотека CarApplet.dll содержит интерфейсы, используемые и автомобильными аплетами (которые являются своего рода плагинами для Check-Engine) и классом CEAgent.Agent. В частности в CarApplet.dll содержится интерфейс CarGateway, который возвращает метод CEAgent.Agent.GetCar().

Для подключения к автомобилю необходимо вызвать метод

CEAgent.Agent.Open("X:\\Путь\\Каталога\\Установки\\Программы\\CheckEngine");
При вызове этого метода передается путь к каталогу установки программы Check-Engine. Этот параметр нужен потому что допускается установка на одно устройство (КПК, ноутбук и т.д.) нескольких версий программы Check-Engine. В отличие от аплета, который запускается из запущенной пользователем версии программы Check-Engine, библиотеке CEAgent для инициализации работы с автомобилем, необходимо указать явно какой автомобиль, т.е. какая версия (экземпляр) программы Check-Engine должна использоваться для получения данных.

Важно!
Метод Open только инициализирует процедуру подключения и завершается до подключения непосредственно к автомобилю. Свойство CEAgent.Agent.IsOpen при этом отображает состояние агента, а не соединения непосредственно. Для контроля соединения непосредственно с автомобилем используйте CEAgent.Agent.GetCar(), который возвращает null, если система еще не готова к работе, а после завершения открытия соединения (не завершения метода Open, а именно завершения внутренних процедур подключения, которые выполняются уже после возврата из Open) возвращает интерфейс CarApplet.CarGateway, содержащий методы и свойства, необходимые для контроля данных и состояния соединения.

Для завершения работы с автомобилем используйте метод CEAgent.Agent.Close()