So war mein Ansatz nach Zacherl's erstem Post:
Delphi-Quellcode:
function ThousandSeparator : String;
var
buf: PChar;
begin
Result := ','; // falls was schiefläuft einen default Wert
buf := StrAlloc(10);
if GetLastError() = ERROR_SUCCESS then
if GetLocaleInfo(
LOCALE_SYSTEM_DEFAULT,
LOCALE_STHOUSAND,
buf,
10) <> 0 then Result := StrPas(buf);
if GetLastError() <> ERROR_INSUFFICIENT_BUFFER then StrDispose(buf);
end;