Um die Ursprungsfrage zu beantworten und Redeemers Antwort etwas auszuführen, man kann Records problemlos verschachteln, nur findet die Deklaration der Typen getrennt von der verschachtelten Struktur statt.
Also so:
Delphi-Quellcode:
type
TAllgemein = record
var Bla...
end;
TDateien = record
var Bla...
end;
TProgrammEinstellungen = record
Allgemein: TAllgemein;
Dateien: TDateien;
end;
var
ProgrammEinstellungen: TProgrammEinstellungen;