Einzelnen Beitrag anzeigen

EConvertError

Registriert seit: 29. Sep 2003
Ort: Österreich
230 Beiträge
 
#11

Re: EOutPutBufferTooSmall- Async Pro

  Alt 7. Mai 2004, 14:52
Hallo!

Schön langsam bin ich richtig deprimiert, weil ich das jetzt so wie oben beschrieben gemacht habe- ohne Erfolg.

Hier der Code (FText ist vom Typ TStrings und ist der Inhalt einer Textdatei).
FlowControl habe ich keine eingestellt. Das liegt auch nicht in meiner Macht, da der Benutzer Einstellungen wie Parity, Baud und FlowControl einstellen wird.

Delphi-Quellcode:
procedure TComPort.SendData;
var
  I: Integer;
begin
  { Sende FText }
  try
    ApdComPort.Open:= TRUE;
    for I:= LineIndex to FText.Count-1 do begin //LineIndex ist eine Integer var
      if ApdComPort.OutBuffFree >= Length(FText[I]) then
        ApdComPort.Output:= FText[I]+#10#13
      else begin
        StatusTrigger:= ApdComPort.AddStatusTrigger(stOutBuffFree);
        ApdComPort.SetStatusTrigger(StatusTrigger, Length(FText[I]) , TRUE);
        LineIndex:= I;
        Break;
      end;
    end;
  finally
    ApdComPort.Open:= FALSE;
  end;
end;

procedure TComPort.TriggerStatus(CP: TObject; TriggerHandle: Word);
begin
  { OnTriggerStatus }
  if TriggerHandle= StatusTrigger then
    SendData;
end;
Das Problem liegt dabei, dass TriggerStatus nicht aufgerufen wird, obwohl ich es mit der folgender Codezeile zugewiesen habe:

ApdComPort.OnTriggerStatus:= TriggerStatus; [Edit]Ich wäre eigentlich schon glücklich wenn mir jemand zeigen könnte, wie man eine längere (sprich 13 kb) Textdatei mit dem ApdComPort (Async Pro) versendet. Den Rest würde ich mir schon selbst dazubauen. Ich bin schon am verzweifeln. [/Edit]

Vielen Dank für eure Hilfe,
Andy
Andreas N.
  Mit Zitat antworten Zitat