Einzelnen Beitrag anzeigen

Benutzerbild von holger_barntrup
holger_barntrup

Registriert seit: 1. Feb 2007
Ort: Barntrup
97 Beiträge
 
Delphi 10.4 Sydney
 
#1

Schreiben von Textdatei / TMemoryStream

  Alt 19. Jun 2019, 10:22
Delphi-Version: XE7
Ich habe ein Problemchen an dem ich schon länger herum grübele.
Und zwar speichere einen Text aus einem RichEdit per IdFTP auf eine CNC -Steuerung.
Das funktioniert seit Jahren ohne Probleme.
In Letzter Zeit ist es vermehrt vorgekommen das nach jeder Zeile eine Leerzeile eingefügt wird. Wie auch immer das passiert. Das einzig auffällige an der Sache ist das es nur auf den neueren Rechnern mit Win7 auftritt, die alten XP Rechner betrifft das nicht.
Momentan lässt sich der Fehler NICHT reproduziern.
Hat vielleicht einer von euch schon mal ein ähnliches Problem gehabt oder eine Idee wo ich ansetzen kann?

Delphi-Quellcode:
procedure TForm20.Speichern1Click(Sender: TObject);
var Stream : TMemoryStream;
    ms : Integer;
begin
  Stream := TMemoryStream.Create;
  try
    IdFTP1.Host :=Host;
    IdFtp1.Username :=Username;
    IdFTP1.Password :=Passwort;
    IdFTP1.Connect();
    IdFTP1.ChangeDir(Sm800Zielverzeichnis);
    RichEdit1.Lines.SaveToStream(Stream);
    Stream.Position := 0; //Ausleseposition des Streams auf Anfang
    IDFTP1.Put(Stream,'kontur.cnc');
    IdFTP1.Disconnect;
    progammstatus:=0;
    Speichermodus:=true;
  finally
    Stream.Free; // Stream aus dem Speicher entfernen
  end;
end;
Ist das von der Syntax so korrekt oder fehlt da etwas wichtiges?
Ich hab das Projekt von einem Kollegen geerbt den ich leider nicht mehr fragen kann.
  Mit Zitat antworten Zitat