Der Code:
Delphi-Quellcode:
if (FPaperTrays = nil) then
begin
try
FPaperTrays := TStringList.Create;
except
FPaperTrays.Free;
FPaperTrays := nil;
raise;
end;
end;
ist Blödsinn. Wenn nichts erzeugt werden kann, kann auch nichts freigegeben werden.
Das Reicht:
Delphi-Quellcode:
if (FPaperTrays = nil) then
FPaperTrays := TStringList.Create;
else
...;
...;
Wie erzeugst du die StringListe und wie gibst du sie wieder frei? das sind nicht ganz irrelevante Codeteile.