Zumindest bis W2000 gab es bei einer Unmenge an Fenstern ein Window - Resourcenproblem.
Gibts es auch unter XP/Vista/Win7. Die Grenzen sind nur "etwas" weiter nach hinten verschoben.
Also das vorgehen alles beim Programmstart zu erzeugen halte ich für blödsinn. Wir gehen eigentlich auch immer her alle von Delphi erzeugten globalen Formularvariablen gleich aus dem Quellcode wieder zu löschen um hier keine Probleme damit zu haben versehentlich ab und zu dieses Variable zu verwenden auch wenn man in einer ganz anderen Instanz ist.
Windows Vista - Eine neue Erfahrung in Fehlern.