Du gibst einen Pointer auf die Variabe als Parameter rein, castest es später aber als TStringList, wo es doch eine PStringList ist
und das auch noch bei einer Variable, welche inzwischen nichtmal mehr existiert, da StartGrab schon beendet wurde und somit seine Variablen weg sind.
Objekte sind schon Pointer, die man einfach nach
Integer/NativeInt/IntPtr/Pointer casten kann.
Und wozu ist strList eigentlich ein Var-Parameter?
PS: CloseHandle prüft selber auf 0, also kann man sich die Prüfung sparen, wenn mann mag.
Delphi-Quellcode:
tHWND:=CreateThread(nil, 0, TFNThreadStartRoutine(@GetProxys), @strList, 0, tID);
CloseHandle(tHWND);
CloseHandle(CreateThread(nil, 0, TFNThreadStartRoutine(@GetProxys), @strList, 0, tID));