vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
NEU! sevCoolbar 3.0 - Professionelle Toolbars im modernen Design!  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2024
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

VB.NET - Fortgeschrittene
Re: Zombifenster richtig schließen 
Autor: Jabberwock_v6
Datum: 10.11.20 14:23

Hallo,

ich habe jetzt herausgefunden dass ich dieses Problem scheinbar bei allen Forms habe. Nicht nur beim Login, da fällt es nur als erstes auf.

Bevor ich ein Fenster lade mit .ShowDialog() frage ich ab ob das Fenster noch existiert.
Scheinbar hatte ich schon immer ein Problem damit.

Also

IF Form isNot Nothing Than Form = Nothing
Form = new From
Form.ShowDialog
Form.Dispose


Ich sehe in der Überwachung dass das Objekt Form dann auch Nothing ist.
Und selbst wenn ich nicht =Nothing mache, ist die Eigenschaft Form.IsDisposed = True

Trotzdem wird, wenn ich dann einen Barcode lese, das BarcodeRead Event auf der alten Form ausgeführt. Die nach dem Login ja eigentlich schon geschlossen wurde.
Aber da die Form ja Disposed ist kann der Barcodetext nicht in das Lable geschrieben werden.
Dies fängt ein Try ab und eigentlich wäre dann schluss und die Form würde auf eine Eingabe warten aber dann wird das Event plötzlich noch mal ausgeführt und dieses mal scheinbar auf der neu erstellten Form. Jetzt kann in das Label geschrieben werden

Der Barcodescanner der in dem Gerät verbaut ist arbeitet in einen eigenen Thread. Es ist nicht möglich aus dem BarcodeRead Event direkt auf den GUI Thread zuzugreifen um z.B. den BarcodeText auf der Form anzuzeigen. Nur mit Invoke.

Ich vermute das dieser Thread beim Schließen der Form nicht beendet wird, nur weiß ich überhaupt nicht ob und wie ich den beenden könnte. Ich erzeuge den ja gar nicht explicite.


Ich vermute Ihr werdet mir hier, mit den paar Infos, nicht viel weiterhelfen können aber vielleicht könnt Ihr mir ein paar Tipps geben was ich versuchen könnte. Oder Irgendwelche Debughilfen um das Problem genauer einzugrenzen.


Z.B. Wenn es in dem Try zum Fehler kommt heißt das ja dass der Code gerade auf der eigentlich längst geschlossenen Form abgearbeitet wird. Kann ich nicht darauf reagieren und die Form dann noch mal richtig schließen?
Dann würden es wenigstens nicht immer mehr Forms werden im laufe der Zeit.
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Zombifenster richtig schließen602Jabberwock_v607.11.20 19:41
Re: Zombifenster richtig schließen276effeff08.11.20 18:56
Re: Zombifenster richtig schließen260Jabberwock_v609.11.20 09:50
Re: Zombifenster richtig schließen261Jabberwock_v610.11.20 14:23
Re: Zombifenster richtig schließen251Kuno6011.11.20 01:53
Re: Zombifenster richtig schließen247Jabberwock_v611.11.20 09:23

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2024 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel