@Basilikum: fWaitAll ist gewollt, da ich ja auf alle Threads warten möchte in ThreadArray warten möchte. falls immer WAIT_OBJECT_0 beim letzten also 4. Thread zurückgegeben wird ist dieser Flag natürlich hinfällig.
ThreadArray ist so Deklariert:
ThreadArray : array of THandle;
If fWaitAll is FALSE, the return value minus WAIT_OBJECT_0 indicates the pHandles array index of the object that satisfied the wait.
Das heist IMO, dass ich immer den Index des Threads, der gerade Zurückgekehrt ist im
Handle Array erhalte und das Nützt mir nichts.

Zitat von
Luckie:
Versuch mal:
dwWaitResult := WaitforMultipleObjects(length(ThreadArray), ThreadArray[0], true, 100);
Warum soll ich nur ein
Handle übergeben?
Ich hätte halt gerne
msgWaitforMultipleObjects um bei jeder Message die
GUI zu Aktualisieren. das scheint aber Laut Basilikums Erklärung nicht zu funktionieren