Tipp: Such mal nach
Bruteforce, denn dort wird ja sowas genutzt.
Kommt drauf an in welchem Maße (Länge und Anzahl) das benötgt wird.
Am Einfachsten kann man da mathematisch rangehn.
Man zählt einen Integer/Int64 hoch.
Und zerlegt ihn bei jedem Schritt in seine Einzelzeile, welche man mit den gewünschen Zeichen gleichsetzt.
Delphi-Quellcode:
function Zerlege(Num: Cardinal; Chars: string): string;
begin
Result := '';
while Num > 0 do begin
Result := Result + Chars[Num mod Length(Chars) + 1];
Num := Num div Length(Chars);
end;
end;
Label1.Caption := Zerlege(0815, 'abc');