Hallo,
ich habe ein Problem, was ich nach Tagen nicht einkreisen konnte. Vielleicht hat jemand eine Lösung?
Ich habe eine
DLL programmiert, die ein Formular öffnet. In einem StringGrid habe ich Elemente drin, die bei der Selektion eine Datenbankabfrage starten. Diese habe ich (damit da nichts blockiert) in einen Thread ausgelagert.
Im OnTerminate-Event stelle ich dann das Ergebnis dar.
Der Thread wird dann auch entfernt.
Klappt alles bestens und fehlerfrei... meistens! Je nach Laune stürzt das Programm nach ein paar Klicks auf das StringGrid ab! Und es ist ein satter Absturz:
Delphi-Debugger sagt
"Access Violation at $..." aber ohne einen Fehlerort (Source-Zeile).
Ohne Delphi-Umgebung erscheint ein
"unbekannter Softwarefehler".
Offensichtlich werden dann die Objekte in meinem Programm noch nichteinmal mehr über den Destructor gelöscht, wie ich sehen kann.
Nach langen Tests habe ich festgestellt, dass das Programm
ZWISCHEN meinen Ereignisroutinen abschmiert. Da bin ich jetzt ziemlich machlos!
Kennt jemand ein solches Problem? Was könnte das sein? Bitte helft mir!
Da das ganze Programm schon relativ gross geworden ist ist es schwierig einen Codeausschnitt zu bringen, aber kann gerne auf Anfrage Details bringen.
Irgendwie grummelt in meinem Hinterkopf die üblichen Probleme mit verschiedenen Speichermanagern Prog/
DLL, owner und parent und was weiss ich.
Muss ich auch innerhalb vopn DLLs mit
stdcall arbeiten?
Danke schonmal!
/\/\arcus
p.s. benutze Delphi 6 unter Win XP.