ich habe das Problem, das die settings.xml nach einem Neustart von IPS komplett zerschrieben wird, wenn sie einen Fehler enthält.
Was habe ich getan? Also, ich lese mit dem WWWReader eine Wetterdienst Webseite und speichere mit dem Parser einen Wetterbericht in eine Variable. Diese Variable enthält nun einen größeren Text und jede Menge HTML Code.
An dieser Variablen in der settings.xml bleibt dann IPS beim Neustart mit einer Fehlermeldung hängen. Beim nächsten Neustart von IPS, startet das System dann mit einer leeren settings.xml.
IPS müsste beim Start die Settings auf XML Strukturfehler überprüfen und im Fehlerfall z.B. eine alternative settings.xml laden.
das loest aber das Problem nicht. Der Datenbereich in Deinem Fall ist ja das Problem und offenbar wird dieser nicht XML konform gespeichert. Da muss paresy bei der Fehlersuche ansetzen. Nur wenn man die Ursache beseitigt, loest man das Problem. Das trifft offenbar grundsaetzlich auf STRING Variable zu, denn wir hatten diesen Fall auch bei der Verarbeitung von eingelesenen Buffervariablen der COM Schnittstelle (beim BHKW von msr_junky).
naja, nicht nur die HTML Tags machen eventuell Probleme, sondern auch Binaerdaten, die beim Lesen von Daten ueber die COM Schnittstelle rein kommen und direkt in die Variable abgelegt werden…
Eventuell muss man hier die STRING Variable grundsaetzlich immer kapseln…
ich kann dir momentan nur eine Settings zur Verfügung stellen, die die IPS Meldung „Settings Destroying“ erzeugt. Eigentlich bekomme ich sonnst noch eine IPS Fehlermeldung, bevor beim nächsten Start die Settings dann hin ist. Diese Meldung kann ich im Moment leider nicht reproduzieren.
Wenn wieder eine defekte Settings habe,bekommst du diese natürlich. :rolleyes:
na ja, ich wollte eigentlich den IPS internen TextParser benutzen und der speichert die Daten in eine IPS Variable. Mich wundert dabei nur, das IPS anstandslos mit dieser HTML Code gefüllten Variablen arbeitet, und das es nur beim Neustart Probleme gibt.
ich habs bisher nicht gelöst, weil ich noch keine Zeit hatte mich mehr darum zu kümmern.
Man könnte doch die Variable vom WWW-Reader einfach mit dem Shutdown-Script die Variable löschen… dann sollte der Inhalt auch nicht in den Settings gespeichert werden und diese dann nicht zerstört werden.
Mit dem Startup-Script holt man sich halt wieder die aktuellen Infos mit dem Reader
genau so mache ich das momentan, funktioniert auch ohne Probleme. Leider greift diese Variante nicht, wenn der Rechner sich „festfrisst“ oder „abstürzt“.
Da die settings.xml das Herz vom IPS ist, müsste man sich vielleicht doch überlegen, ob man im Falle einer defekten Datei, automatisch eine Notfall Settings laden kann.