PDA

Просмотр полной версии : Получение значения из кадра в Delphi



asutp
31.12.2008, 13:54
Здравствуйте.
1. Скачал библиотеку Owen_IO.
2. Из своей программы управляю портами (откытие/закрытие)
3. Есть вопрос по функции для Delphi ---GetBufferFloat24(buffer: Pchar; buffer_size: Integer; var result: Single): Integer;

Входными параметрами является принятый кадр в символьном формате и его длина.

соответственно код выклядит так:

-procedure TForm1.Button1Click(Sender: TObject);
-var
-PC:PChar;//кадр
-Re:Integer;// значение переменной из кадра
-begin
-PC:='#GHGIPVMIGGGHNHIR.'; /// сам формирую кадр для функции (взят и Portmon)

-if (owen_io.GetBufferSInt(PC,18,Re))<0///
-Then showmessage ('Ошибка чтения');/// декодирование кадра
-edit1.Text:=inttostr(re); //вывод результата
- end;

Если я использую функцию чтения (а не разбора) все работает и результат =1.
Но при использовании функции получения значения результат =0 (и ошибок функция не возвращает).

Если кто то сталкивался с эти или знает где я ошибаюсь прошу вас помочь.

Дмитрий Егоренков
11.01.2009, 15:44
GetBuffer{*} - это служебные функции, которые по недоразумению описаны в документации. они разбирают двоичные данные, полученные после перевода из ASCII. не рекомендую их использовать.