Показать сообщение отдельно
  #28  
Старый 09.04.2012, 23:08
Аватар для cotseec
cotseec cotseec вне форума
Активный
 
Регистрация: 16.07.2008
Сообщения: 353
Версия Delphi: D7,TDE06,RAD09
Репутация: 1443
По умолчанию

Цитата:
Почему визуально количество байт отображается(в label, edit, showmessage), а взаимодействовать с ними не могу (использовать в процедурах наприм. case)??
вы пытаетесь провести отбор (case) по данным типа string, а case умеет работать только с целочисленными типами
Цитата:
Попробовал посчитать байты в температуру. Оказалось что цифры которые отображаются в edit в корне отличаются от тех которые приходят от message.
от потока у вас приходит сумма символов из которых состоит пришедшая от устройства цепочка байт, при этом как вы пытаетесь разобрать текстовую строку, переданную из потока, зная только количество пришедших байт, для меня осталось загадкой (например, строка '15178' может означать либо байты со значением 15 и 178 либо 151 и 78)
повторюсь,
Цитата:
З.Ы. имхо лучше передавать указатель на буфер и работать с байтами, а не конвертировать в String и потом высчитывать (но в этом случае процедуру ReadData необходимо переписать)

З.Ы. может кошернее считать значение температуры в потоке и передавать только значение?
Ответить с цитированием