Hi,
ich habe mal ein Programm geschrieben, welches auf Knopfdruck (ON) eine Datei erzeugen und die generierten Daten in diese Datei schreiben soll. Wenn ich den Schalter jetzt wieder auf OFF stelle, soll die Datei geschlossen werden und das schreiben dadurch natürlich auch aufhören.
Wenn ich jetzt wieder auf ON schalte, soll ein neues File erzeugt werden und der Schreibzyklus soll erneut beginnen.
Allerdings liefert mir mein VI immer einen Fehler und ich verstehe nicht, wieso. Kann mir da jemand weiterhelfen? Das VI ist in Version 7.0 abgespeichert.
Danke und Gruß,
Joe
Hi
Habe dein Vi laufen lassen
Ich bekomme einen Fehler wenn ich das Speichern beende
Das Passiert deshalb weil ein laufzeit problem da ist
du hast das schreiben parrallel zur eventstruktur programmiert
Jetzt will er noch einmal schreiben aber das File ist schon geschlossen und damit hat die write funktion keine gültige reference mehr
Gruß
Jürgen
OK, danke für deine schnelle Antwort.
Das hab ich schon fast befürchtet. Weil es wird schwer, das Schreiben in die Event-Struktur einzubauen (normalerweise ja dann in das Timeout-Event), weil es noch diverse weitere Events gibt, und die Datenerzeugung ja da auch weiterläuft und weiter angezeigt UND gespeichert werden soll.
Da muss ich mir wohl was einfallen lassen, damit das Timing da stimmt. Weil mMn muss das Write außerhalt bleiben. Aber ich lasse mich immer gerne eines Besseren belehren.
Ich habe da noch eine Idee
sie ist zwar nicht ganz sauber aber ich denke es geht so
Also du schaltest das automatische Fehlererkennung einfach in dem VI aus
Das geht unter VI eigenschaften Ausführung
Dann geht zumindestens kein Fenster mehr auf
Wie gesagt nicht ganz fein aber es geht
Gruß
Jürgen
Hi
Habe nochmal ein wenig mit deinem VI gespielt
Hat mich selber interessiert wie es zu lösen ist
Also hier eine Lösung mit LabVIEW 7.1
Gruß
Jürgen
Hi Buhrz.
Super Lösung. Danke. Jetzt funktioniert es.
Ist ja eigentlich klar, dass sich das Write File.vi seine RefNum erst hinter der Event-Structure abholen darf, nachdem also das Close File.vi schon gelaufen ist.
Manchmal können die Dinge doch so einfach sein.
Ich habe jetzt nur noch das "Byte Stream File Refnum" Control in eine Konstante geändert, damit ich nich noch ein Element auf dem Front Panel hab, das ich unsichtbar schalten muss. Das müsste dann ja genauso funktionieren, oder gibt es einen zwingenden Grund, warum das ein Control sein MUSS, den ich noch nicht kenne?
Viele Grüße,
Joe