Российский производитель и разработчик сертифицированного измерительного оборудования с 1987 года


LTR и дельфи

Вы не вошли.

 Поиск | Регистрация | Вход 

Василий_А
28.08.2008 15:54:37
#1

Гость

LTR и дельфи

пытаюсь использовать ltr27api.pas из ltr_dll.zip от 07.05.08

судя по всему, неверно описаны структуры - например при вызове LTR27_GetDescription получаются строковые переменные, сдвинутые на несколько байт (имя, серийный номер и подобное).

использую дельфи6, но для имеющихся применений разницы с приведенными для дельфи7 примерами быть не должно.

для ltr11api.pas вроде как все нормально, а работа с 27-й платой сильно затруднена.

пожалуйста проверьте корректность ltr27api.pas

Василий_А
29.08.2008 09:20:25
#2

Гость

Re: LTR и дельфи

ну хоть сам себе отвечу smile
если добавить смещения - например в виде(ofs0:array[0..1] of byte;)
в ltr27api.pas
вот так:

// Структура описания модуля
TINFO_LTR27=packed record
         ofs0:array[0..1] of byte;
        Module:TDESCRIPTION_MODULE;
         ofs1:array[0..2] of byte;
        Cpu:TDESCRIPTION_CPU;
        Mezzanine:array[0..LTR27_MEZZANINE_NUMBER-1]of TDESCRIPTION_MEZZANINE;
end;

и в ltrapitypes.pas
вот так:
// описание процессора и програмного обеспечения
    TDESCRIPTION_CPU=packed record
      Active:byte;                                         // флаг достоверности остальных полей структуры
      Name:array[0..15]of char;                            // название
ofs0:array[0..2] of byte;
      ClockRate:double;                                    //
      FirmwareVersion:Cardinal;                            //
      Comment:array[0..COMMENT_LENGTH-1]of char;           //
    end;

то вроде как все работает...