Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Система";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Вниз

Проблема с получением данных с 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;

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


 
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]

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


 
Германн ©   (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 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)^ - что это и главное где?


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

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

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

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

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


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

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


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

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



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

Форум: "Система";
Текущий архив: 2004.04.11;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.46 MB
Время: 0.059 c
1-1082360458
k&amp;k
2004-04-19 11:40
2004.05.09
Drag&amp;Drop


1-1082189044
Orion777
2004-04-17 12:04
2004.05.09
Использование ресурсов в компонентах


3-1081926168
Manfred7
2004-04-14 11:02
2004.05.09
Возможна ли фильтрация записей в детализирующей таблице


1-1082695408
Апач
2004-04-23 08:43
2004.05.09
TreeView


14-1082027366
Vlad Oshin
2004-04-15 15:09
2004.05.09
Чудесатые жалобы на wХР.





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский