... + TPath.DirectorySeparatorChar + ...
TPath.Combine(..., ...)
Und auch falls bereits ein abschließender Separator im ersten String ist, dann wird das abgefangen (nicht doppelt drin).
Ebenso, wenn der zweite String ein absoluter Pfad ist (kein Relativer), dann wird der Erste natürlich weggelassen.