Vielleicht erzeugt Delphi einfach nur zu schnellen Code
Du kannst ja mal versuchen, ein
Sleep(1)
zwischen die Generierung zu setzen. Bei 100 GUIDs hast du dann eine Verzögerung von 100 ms. Das ist zwar nicht schön, aber besser als kollidierende GUIDs.
Der
RFC behandelt den Fall "zu schneller" Aufrufe innerhalb eines System Time Intervals mit einer "Muss"-Anforderung:
Zitat:
If a system overruns the generator by requesting too many UUIDs
within a single system time interval, the UUID service MUST either
return an error, or stall the UUID generator until the system clock
catches up.
Entweder der Generator ist nicht
RFC-compliant (das ist eher unwahrscheinlich) oder der Fehler liegt woanders.