Вниз
Скачать: CL | DM;

Проблема с получением данных с COM порта   Найти похожие ветки 

← →
dim- ©   (2004-03-19 01:29) [0]

Помогите решить проблемму
Пользуюсь компонентой CommPortDriver при получении данных делаю:
procedure TForm2.CommPortDriver1ReceiveData(Sender: TObject;
 DataPtr: Pointer; DataSize: Cardinal);
var  i: integer;
   s: string;
begin
 // Convert incoming data into a string
 s := StringOfChar( " ", DataSize );
 ShowMessage(s);
 move( DataPtr^, pchar(s)^, DataSize );
 // Exit if s is empty. This usually occurs when one or more NULL characters
 // (chr(0)) are received.
 while pos( #0, s ) > 0 do
   delete( s, pos( #0, s ), 1 );
 if s = "" then
   exit;
 // Remove line feeds
 i := pos( #10, s );
 while i <> 0 do
 begin
   delete( s, i, 1 );
   i := pos( #10, s );
 end;
 i := pos( #13, s );
 while i <> 0 do
 begin
   delete( s, i, 1 );
   i := pos( #13, s );
 end;
 ShowMessage(s);
 Edit1.Text:= s;
end;

В результате получаю какую то фигню, а пример (фрагмент скопирован от туда)работает нормально, правда там в ричедит выводиться


← →
Германн ©   (2004-03-19 03:31) [1]

Вопросы по поводу сторонних компонент лучше всего адресовать их авторам, а не "всем прочим"!
Ну, не использую я, и вообще не знаю такой компонент! И что в таком случае я могу понять из вышеописанного текста?


← →
Reindeer Moss Eater ©   (2004-03-19 08:53) [2]

procedure TForm2.CommPortDriver1ReceiveData(Sender: TObject;
DataPtr: Pointer; DataSize: Cardinal);
var  i: integer;
  s: string;
begin
SetLength(s,DataSize);
StrLCopy(PChar(s),PChar(DataPtr),DataSize);
....


← →
Reindeer Moss Eater ©   (2004-03-19 09:11) [3]

В результате получаю какую то фигню

move( DataPtr^, pchar(s)^, DataSize );

Пишешь фигню - фигню и получаешь.

pchar(s)^ - что это и главное где?


← →
dim- ©   (2004-03-19 15:11) [4]

Говорю, это фрагмент рабочей программы, только в ней это работает, а у меня нет



Страницы: 1 вся ветка

Скачать: CL | DM;



Память: 0.46 MB
Время: 0.029 c
1-1080319114
Федя Мегатронов
2004-03-26 19:38
2004.04.11
Компилируеться вникуда (помогите с глюком)


1-1082632603
КомофОнСамый
2004-04-22 15:16
2004.04.11
Печать через QuickReport текствого файла с предв. просмотром


3-1081771449
Санёк
2004-04-12 16:04
2004.04.11
Как узнать имя домена в MS SQL Server ?


1-1082465220
CraKer
2004-04-20 16:47
2004.04.11
Как заранее подгрузить jpg


14-1079836948
Думкин
2004-03-21 05:42
2004.04.11
С днем рождения! 21 марта




   Наверх