Einzelnen Beitrag anzeigen

DieFliege

Registriert seit: 6. Aug 2013
54 Beiträge
 
Delphi XE4 Professional
 
#4

AW: Erhalte vom Programm "Keine Rückmeldung" - Speicherüberlauf?

  Alt 10. Nov 2015, 18:47
Hallo,

vielen Dank für Eure Rückmeldungen. Hier nun der Code.

Delphi-Quellcode:
function Textumbruch(text: String; textbreite: Integer): String;
var
  textlaenge : Integer;
  zeilenlaenge : Integer;
  zwPos : Integer;
  zlPos : Integer;
  zu : String;
  orgText : String;
  kopText : String;
  ausgabetext : String;

begin
  zu := #13#10;
  zwPos := 0;
  zlPos := 0;
  zeilenlaenge := 0;
  textlaenge := Length(text);
  orgText := text;
  kopText := text;

  while textlaenge > textbreite do
  begin
    zwPos := Pos(' ', kopText);
    zeilenlaenge := zeilenlaenge + zwPos;


    if zeilenlaenge > textbreite then
      begin
        ausgabetext := ausgabetext + Copy(orgText, 1, zlPos);
        ausgabetext := ausgabetext + zu;
        Delete(orgText, 1, zlPos);
        textlaenge := textlaenge - zlPos;
        zlPos := 0;
        zwPos := 0;
        zeilenlaenge := 0;
      end;

    zlPos := zlPos + zwPos;
    Delete(kopText, 1, zwPos);
  end;

  ausgabetext := ausgabetext + orgText;
  Result := ausgabetext;
end;
Wie gesagt, das Programm funktioniert ja, nur wenn Windows ne Weile gelaufen ist und der Speicher vermutlich voll ist, dann kommt diese Meldung. Starte ich dann Rechner neu, kann ich wieder 2-4 Stunden damit arbeiten.

LG Micha

(Hier mal das komplette Programm: zeilenumbruch.zip)
  Mit Zitat antworten Zitat