Hey Leute, ich habe ein Problem, das ich mir beim besten Willen nicht erklären kann: ich habe eine Form, mit zwei buttons. Mit button1 führe ich ein Funktion aus einer DLL aus, welche ich statisch geladen habe. Diese Funktion wird im Hauptthread ausgeführt und blockiert daher die Messagverarbeitung in meinem Programm.
Daher habe ich abgeleitet von TTHread ein Threadobjekt erzeugt, welches in execute ebenfalls die Funktion ausführt, welche ich in der Unit des Threadobjektes geladen habe. Diesen Thread führe ich mit Button2 aus. Wen ich das Programm starte und Button2 ausführe, wird die Funktion nicht zu ende ausgeführt und der Thread bleibt hängen. Dann beende ich das Programm und führe es erneut aus. Wenn ich nun die funktion der DLL erst mit Button1 lade/ausführe, funktioniert das, wie gewohnt, wenn ich danach den Thread starte, funktioniert dieser einwandfrei und läuft durch?? aber nur wenn ich zuvor die Funktion über den Hauptthread mit Button1 ausführe. wie kann das denn sein