Hallo Zusammen,
in einer Funktion von mir, die dazu dient aus einer
SQL-Anweisung (als Stringliste) alle Kommentare zu entfernen, tritt sporadisch der Fehler "Zu wenig Arbeitsspeicher" auf. Leider kann ich nicht nachvollziehen, wo und warum das geschieht. Evtl. hat einer von Euch ja mehr Überblick und sieht auf den 1.Blick, unter welchen Umständen das passieren könnte bzw. ob ich ansich einen schweren Fehler begehe (evl. die Übergabe der Stringliste?).
Delphi-Quellcode:
function DeleteComments(TempList:TStringList):TStringList;
var beg,en,i : integer;
begin
for i:=0 to TempList.Count-1 do
if Trim(Copy(TempList[i],1,2))='--' then
TempList[i]:='/*'+Copy(TRIM(TempList[i]),3,Length(TempList[i]))+'*/';
while pos('/*',TempList.Text) <> 0 do
begin
beg:=pos('/*',TempList.Text);
en:=pos('*/',TempList.Text);
if en=0 then en:=Length(TempList.Text);
TempList.Text:=copy(TempList.text,1,beg-1)+
copy(TempList.Text,en+2,Length(TempList.Text));
end;
Result:=TempList;
end;
Gruß
Micha
Der Weg ist das Ziel...