UInt64 ist halt "richtiger"
Ich habe wohl zu viel Java programmiert, da gibt es keine unsigned Datentypen.
Und durch die ganzen Cardinals im VirtualTreeView war man nur am Rum-casten, damit der Compiler keine "unsigned mit signed Integer-Vergleich" Warnungen ausspuckte. Deswegen verzichte ich normalerweise auf UInt64/Cardinal, wenn es sich nicht um interne Daten handelt, die von außen (andere Entwickler) zugegriffen werden, oder wenn ich am Schluss einen DWORD oder UINT
WinAPI Parameter habe.