Delphi-PRAXiS
Seite 1 von 4  1 23     Letzte »    

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Win32/Win64 API (native code) (https://www.delphipraxis.net/17-win32-win64-api-native-code/)
-   -   Delphi Error Code 1400. Ungültiges Fensterhandle (https://www.delphipraxis.net/14836-error-code-1400-ungueltiges-fensterhandle.html)

Meflin 16. Jan 2004 16:40


Error Code 1400. Ungültiges Fensterhandle
 
hab ein klitzekleines problem: ich hab ne anwendung, die threads erzeugt. die beenden sich scheinbar auch alle wieder. wenn ich die anwendung allerdings beende, bekomme ich o.g. exception! wenn ich die threads nicht starte, geht alles normal! das dumme ist, dass ich den quelltext zwar posten könnte, dieser aber schon 450 zeilen lang ist! das möcht ich keinem antun! wo sind also die prinzipiellen auslöser dieser exception zu suchen?

*MFG*

Luckie 16. Jan 2004 16:43

Re: Error Code 1400. Ungültiges Fensterhandle
 
Beende erst alle Threads bevor du dein Fenster schließst. Es kann sein, dass ein Thread noch auf Ressourcen deines fensters zugreift nachdem es schon zerstört wurde, der Prozess aber noch läuft.

SirThornberry 16. Jan 2004 16:43

Re: Error Code 1400. Ungültiges Fensterhandle
 
greifst du in den threads irgendwie auf die vcl-komponenten des forms zu ohne syncronize???

Meflin 16. Jan 2004 16:48

Re: Error Code 1400. Ungültiges Fensterhandle
 
die threads scheinen aber alle beendet, bevor ich das programm beende!
synchronize verwende ich bis jetzt nicht!

Luckie 16. Jan 2004 16:52

Re: Error Code 1400. Ungültiges Fensterhandle
 
Zitat:

Zitat von Meflin
synchronize verwende ich bis jetzt nicht!

Und wie greifts ud von den Threads auf Komponenten deiner Form zu, um deren Ergebnsi darzustellen? Oder ist das nicht nötig?

Meflin 16. Jan 2004 16:56

Re: Error Code 1400. Ungültiges Fensterhandle
 
zum einen regel ich das über globale variablen, die ich aus dem formular heraus anzeige.
aller dings verwend ich auch
with form1 do begin...

SirThornberry 16. Jan 2004 16:57

Re: Error Code 1400. Ungültiges Fensterhandle
 
Oder benutzt du "application.showmainform := false"? wenn du das verwendest und auf dem formular rumänderst ohne dass, das mainform vorher sichtbar war kommt auch so ein fehler mit fensterhandle. Aber ich tippe darauf das es daran liegt das du nicht syncronize benutzt. Wenn du duch einen thread am haupformular was änderst woher soll das formular dann das wissen. Und wenn du weißt dasses handle gleichzeitig ne adresse im Speicher ist, wird klar das es durchaus sein kann das du durch änderungen am mainform was im speicher änderst und dann stimmt halt das handle von irgendwas nimmer

Luckie 16. Jan 2004 16:59

Re: Error Code 1400. Ungültiges Fensterhandle
 
Zitat:

Zitat von Meflin
zum einen regel ich das über globale variablen, die ich aus dem formular heraus anzeige.

Autsch.
Zitat:

aller dings verwend ich auch
with form1 do begin...
Noch mal Autsch.

Kuck dir unbedingt mal mein Threading Tutorial an. Gerade bei Threads sollte man wissen, was man tut, sonst endet das so wie bei dir.

Meflin 16. Jan 2004 17:01

Re: Error Code 1400. Ungültiges Fensterhandle
 
learning by doing... *g*!
der zugriff auf die globalen variablen erfolgt atomar!

Luckie 16. Jan 2004 17:02

Re: Error Code 1400. Ungültiges Fensterhandle
 
Mit den InterLockedxxx-Funktionen?


Alle Zeitangaben in WEZ +1. Es ist jetzt 03:00 Uhr.
Seite 1 von 4  1 23     Letzte »    

Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz