| |

VB.NET - Ein- und UmsteigerOnLoad und OnShown wird 2x ausgeführt | |  | Autor: Bazi | Datum: 06.04.22 10:59 |
| Hallo,
ich habe auf einem Tablett ein Problem mit einem meiner Programme.
So wie ich bis jetzt ermittelt habe wird das Form_Load und das Form_Shown doppelt ausgeführt. Wobei es aber im 2.Durchgang beim Form_Shown nicht bis zum Ende läuft sondern vorher abbricht.
Dadurch werden dann Ansichten nicht so geladen wie es sein soll, es kommt im weiteren Programmablauf auch zu weiteren Fehlern, die ich noch nicht näher eingegrenzt habe.
Das Phänomen tritt auf einem von 8 Tabletts auf mit denen wir arbeiten. In diesem Fall ein Surface.
Ich habe bereits mehrfach das Programm deinstalliert und neu aufgespielt, und versuche die Ursache nun weiter einzugrenzen.
Ist Euch so ein seltsames Verhalten und die eventuelle Ursache bekannt?
Gruß Christian
Danke für die Hilfe
Gruß Christian |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Manfred X | Datum: 06.04.22 13:35 |
| Hallo!
Mir ist nicht bekannt, dass das Windows-Betriebssystem oder das Framework bzw. Net-Core
oder CLI solche Erscheinungen bewirkt.
Ich vermute, es liegt eher an einer Ereigniskette, die durch den Code in den Eventhandlern
ausgelöst wird. Du schreibst, es geschieht im Rahmen von "Ladevorgängen". Ich würde zunächst
überprüfen, was geladen wird und welche Ereignisse dabei ausgelöst werden. |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Bazi | Datum: 07.04.22 09:49 |
| mich irritiert dass es nur bei einem Gerät auftritt, nicht bei allen.
Dann baue ich mal ein Codelogging ein und vergleiche welche Prozeduren in welcher Reihenfolge aufgerufen werden. Das gleiche ich dann für die verschiedenen Geräte miteinander ab.
Danke für die Hilfe
Gruß Christian |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Bazi | Datum: 19.04.22 18:27 |
| Ich habe nun ein Code-Logging eingebaut. Das hat mich jedoch nicht weiter gebracht, die Ausgabe vom Programmstart bis ich die Ausgabe erzeugen kann gibt im PDF knapp 500 Seiten. Das zu vergleichen war mir nicht wirklich möglich.
Allerdings ist mir aufgefallen dass sich ein Formular nicht schließen lässt.
Die Auslastung der CPU geht auf 99,9% nach oben.
Was passiert denn, wenn der Zugriff auf eine Komponente nicht funktioniert weil ein Teil vom FrameWork nicht richtig geladen oder installiert ist?
Danke für die Hilfe
Gruß Christian |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Manfred X | Datum: 19.04.22 19:20 |
| Ich kann nur raten.
Eventuell wird beim Laden des Formulars auf diesem Endgerät ein
Ereignis ausgelöst, dessen Handler-Parameter (oder Werte in global definierten
Input-Variablen) eine Kette von weiteren Ereignissen nach sich ziehen. |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Bazi | Datum: 19.04.22 20:36 |
| Fehler beseitigt, aber nicht verstanden.
Unter %AppData% waren 2 Verzeichnisse mit meinem Programmnamen abgelegt. Darin die My.Settings.
Habe beide gelöscht, nun läuft es.
Mich irritiert daran besonders dass es keine Fehlermeldung gab.
Danke für die Hilfe
Gruß Christian |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Manfred X | Datum: 19.04.22 22:37 |
| Im Prinzip musst Du alle Werte, die von ausserhalb in eine Anwendung
eingebracht werden, zunächst auf Brauchbarkeit prüfen:
Windows-Einstellungen, Umgebungsvariablen, Settings, Benutzereingaben usw. |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Bazi | Datum: 21.04.22 13:41 |
| Problem noch nicht final gelöst.
Nachdem ich die Verzeichnisse gelöscht habe hat das Programm einwandfrei funktioniert. Es startete mit Standardwerten.
Heute hatte ich wieder das gleiche Problem.
Ich habe inzwischen bei jedem Zugriff auf die My.Settings einen Try/Catch Block eingebaut der mir eine Fehlerausgabe schreiben sollte. Es läuft da aber nicht rein, wird also kein Fehler ausgelöst.
Nachdem ich nach dem heutigen Problem die Settings-Datei wieder gelöscht habe funktioniert es derzeit wieder.
Wie kann ich denn die Settings auf Brauchbarkeit prüfen? Ich habe darin lediglich String, Boolean, Integer und Drawing.Color Werte abgespeichert.
Danke für die Hilfe
Gruß Christian |  |
Re: OnLoad und OnShown wird 2x ausgeführt | |  | Autor: Manfred X | Datum: 21.04.22 17:54 |
| Hallo!
Eine Ausnahme wird nur ausgelöst, wenn der geladene Settings-Wert nicht in den
dafür vorgesehenen Datentyp passt.
Das hat nichts damit zu tun, ob das Programm die Ausprägung dieses Wertes "sinnvoll"
verarbeiten kann.
Offenbar wird von der Anwendung beim Beenden eine Settings-Datei gefüllt mit Werten,
die für das Gerät unbrauchbar sind.
Du solltest beim Beenden des Programm deshalb zunächst kontrollieren, welche Werte
aktuell in den Einstellungen vorliegen. Das könnte weitere Hinweise liefern. |  |
 | 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 |
  |
|
sevAniGif (VB/VBA) 
Anzeigen von animierten GIF-Dateien
Ab sofort lassen sich auch unter VB6 und VBA (Access ab Version 2000) animierte GIF-Grafiken anzeigen und abspielen, die entweder lokal auf dem System oder auf einem Webserver gespeichert sind. Weitere Infos
Tipp des Monats September 2023 Dieter OtterPopUp-Menü wird nicht angezeigt :-(In diesem Tipp verraten wir Ihnen, wie Sie Probleme mit PopUp-Menüs umgehen können, wenn diese unter bestimmten Umständen einfach nicht angezeigt werden. Access-Tools Vol.1 
Über 400 MByte Inhalt
Mehr als 250 Access-Beispiele, 25 Add-Ins und ActiveX-Komponenten, 16 VB-Projekt inkl. Source, mehr als 320 Tipps & Tricks für Access und VB
Nur 24,95 EURWeitere Infos
|
|
|
Copyright ©2000-2023 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
|
|