Hi!
Danke für Eure Antworten.
Ja die Komponente ist TComPort. Weiß nicht genau wo ich die her habe.
Die liefert das Ereigniss OnReadCallback.
Hier ein Ausschnitt aus dem Beispiel.
Data enthält die Daten vom
COM. Die Komponente läuft mit einem eigenen Thread.
Delphi-Quellcode:
procedure TForm1.ComPort1ReceiveCallBack( Data: string );
begin
if Memo1.Lines.Count > 500 then
Memo1.Clear;
Memo1.Lines.Add( Data );
Image1.Visible := not Image1.Visible;
end;
Das ist soweit klar was da psssiert.
Nun kommt mein "Problem"...
Delphi-Quellcode:
procedure TForm1.btnSendClick( Sender: TObject );
begin
ComPort1.send('AT'#13 );
... //<----- Hier auf das OK/ERROR warten...
if bolAnsOk then begin
ShowMessage('OK empfangen');
end else begin
ShowMessage('Kein OK empfangen, nochmal');
end;
end;
Das Programm soll also erst weiter abgearbeitet werden wenn OK,ERROR oder NO CARRIER vom Modem als Antwort kam, um sicher zu sein das man mit den empfangenen Daten arbeiten kann. Wäre ja auch nicht schön wenn man das Modem mit Befehlen zuflastert ohne zu wissen was es dazu sagt.
Hoffe das war nun etwas ausführlicher...
Gruß Frank