Benutzer mit den meisten Antworten
Lesen von user.config

Frage
-
Hallo zusammen
Ich mache VB.NET Programme, die xml-Dateien im Netzwerk lesen und auswerten. Damit der Netzwerkpfad individuell ausgewählt werden kann, stelle ich den Pfad nach dem Auswählen in der user.config bereit. Dort hat es aber noch mehrere Informationen die mein Programm braucht, wie etwa die Grösse und die Position der Fenster. In der Startform im Ereignis Form_Load oder Form_Shown lese ich diese benutze ich die Eigenschaften von der user.config wieder in dem ich mit My.Settings.XMLDatei darauf zugreife. Bei Form_FormClosing fülle ich dann diese Eigenschaften wieder, falls sich was geändert hat.
Alle klappt einwandfrei wie es sollte und wie gewünscht. Mein Programm läuft fehlerfrei.Nun wird aber gewünscht, dass mein Programm automatisch mit Windows starten soll. Und hier beginnen nun die Probleme. Ich habe es sowohl mit einem Autostart in der Registry, so wie einer Verknüpfung im Autostart Ordner versucht. Immer wieder kommt es vor, dass nur die Standartwerte zur Verfügung stehen, aber nicht die Werte aus user.config. Man kann das Programm ganz einfach beenden und gleich wieder starten. Dann stehen die Informationen aus user.config richtig bereit. Für mich scheint es so, dass die user.config nicht oder nur unvollständig zur Verfügung steht, wenn das Programm mit Windows startet.
Kennt sich jemand mit diesem Verhalten aus?
Gruss Marcel
Antworten
-
Hallo zusammen
Nach dem Tipp von Thomas habe ich ein Testprogramm erstellt und es laufen lassen. Dabei habe ist festgestellt, dass die user.config beim Windows Start auf jedem Fall gelesen werden kann, egal ob es im Load oder Shown Ereignis ist.
Das Problem liegt viel mehr am Verhalten der Benutzer. Da sich mein Programm in der Taskliste befindet, wird es oft nicht beendet, sondern man fährt einfach den Computer herunter. In diesem Fall hat das Programm keine Zeit mehr die user.config zu schreiben. Am nächsten Tag stehen also die Angaben vom letzten mal in der user.config, wo das Programm normal beendet wurde.
Gruss Marcel
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Dienstag, 2. Juni 2020 10:16
Alle Antworten
-
Hallo,
erstelle ein Log zu diesem Zeitpunkt in dem festgehalten wird ob die User.config vorhanden ist und wenn ja, aus welchem Pfad sie genommen wird. Umschließe das ganze dann mit einem Try/Catch block um mögliche Fehler abzufangen um diese wiederum ins Log zu schreiben.
Gruß Thomas
13 Millionen Schweine landen jährlich im Müll
Dev Apps von mir: UWP Segoe MDL2 Assets, UI Strings -
Hallo zusammen
Nach dem Tipp von Thomas habe ich ein Testprogramm erstellt und es laufen lassen. Dabei habe ist festgestellt, dass die user.config beim Windows Start auf jedem Fall gelesen werden kann, egal ob es im Load oder Shown Ereignis ist.
Das Problem liegt viel mehr am Verhalten der Benutzer. Da sich mein Programm in der Taskliste befindet, wird es oft nicht beendet, sondern man fährt einfach den Computer herunter. In diesem Fall hat das Programm keine Zeit mehr die user.config zu schreiben. Am nächsten Tag stehen also die Angaben vom letzten mal in der user.config, wo das Programm normal beendet wurde.
Gruss Marcel
- Als Antwort markiert Dimitar DenkovMicrosoft contingent staff, Administrator Dienstag, 2. Juni 2020 10:16