LabVIEWForum.de
Aenderungen nach letztem Abspeichern anzeigen - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+---- Forum: DLL & externer Code (/Forum-DLL-externer-Code)
+---- Thema: Aenderungen nach letztem Abspeichern anzeigen (/Thread-Aenderungen-nach-letztem-Abspeichern-anzeigen)



Aenderungen nach letztem Abspeichern anzeigen - AlexanderM - 26.08.2009 14:00

Ich verwende zur Kommunikation ein vi, welches ueber eine dll mit einem Messgeraet kommuniziert. Jetzt passiert es manchmal, dass obwohl ich diese (ich nenne sie mal read.vi) nachdem ich das Hauptprogramm benutzt habe und keine aenderung vorgenommen habe, erfragt, ob aenderungen gespeichert werden sollen. Ich lasse die Messung einfach 5 Sekunden laufen, schalte das Hauptprogramm aus und ploetzlich ist diese Datei veraendert. Leider habe ich nicht herausgefunden, was die besagt Aenderung ist, was mir viell. weiterhelfen koennte. Deshalb die Frage, gibt es eine Funktion, die alle Aenderungen, die nach dem letzten Abspeichern vorgenommen wurden, anzeigt?

Vielen Dank schon mal!


Aenderungen nach letztem Abspeichern anzeigen - rolfk - 26.08.2009 14:28

"File->VI Properties" in dem betroffenen VI. Dort im Pull-down Selector "General" wählen und dann den Button "List Unsaved Changes..." drücken.

Rolf Kalbermatter


Aenderungen nach letztem Abspeichern anzeigen - AlexanderM - 27.08.2009 13:50

Vielen Dank erstmal fuer die Antwort. Leider habe ich LabVIEW 6.1 und da gibt es einen Button Current Changes, der nur einen allgemeinen Text hervorbringt, dass allgemein irgendetwas veraendert wurde. Ich habe aber noch eine andere Frage. Ich benutze in einem .vi die Call Library Node und darueber werden Messerte ausgelesen. Nach einigen (~15) Stunden durchgehender Messung haengt sich das Programm auf. Wird irgendetwas in der dll gespeichert so dass sie dann ueberladen ist oder woran kann das liegen? Gibt es einen Befehl, der die ganze Sache reseted bzw. den Zwischenspeicher leer raumt?


Aenderungen nach letztem Abspeichern anzeigen - rolfk - 27.08.2009 15:08

' schrieb:Vielen Dank erstmal fuer die Antwort. Leider habe ich LabVIEW 6.1 und da gibt es einen Button Current Changes, der nur einen allgemeinen Text hervorbringt, dass allgemein irgendetwas veraendert wurde. Ich habe aber noch eine andere Frage. Ich benutze in einem .vi die Call Library Node und darueber werden Messerte ausgelesen. Nach einigen (~15) Stunden durchgehender Messung haengt sich das Programm auf. Wird irgendetwas in der dll gespeichert so dass sie dann ueberladen ist oder woran kann das liegen? Gibt es einen Befehl, der die ganze Sache reseted bzw. den Zwischenspeicher leer raumt?

Hmm wenn da nur ein allgemeiner Text kommt wird das wohl auch in neueren Versionen mehr oder weniger so bleiben. Ich glaube nicht dass sich da grundlegend viel geändert hat. Meine Vermutung ist, dass der Path zur DLL angepasst wurde. Bei neueren LabVIEW Versionen bekommst Du dahingehend ausführlichere Informationen beim Laden eines VIs um mögliche Crosslinking Probleme einfacher aufspüren zu können.

Zu Deinem anderen Problem. Das kann entweder geschehen weil Du die DLL mit nicht korrekten Parametern oder zu kleinen Buffern aufrufst, oder weil die DLL einen Bug hat. Im ersten Fall kannst Du dass beheben indem Du die richtigen Parameter übergibst. Ein beliebter Fehler von Call Library Node Bastlern ist um String oder Arraybuffer in die die DLL etwas schreiben soll gar nicht oder zu klein anzulegen, BEVOR die Funktion aufgerufen wird. Das hat oft nicht unmittelbar katastrophale Folgen aber die DLL überschreibt trotzdem Speicher den sie nicht sollte und irgendwann bumst es halt doch. Im zweiten Fall kannst Du selber nichts tun. Da ist der DLL Entwickler gefragt.

Rolf Kalbermatter


Aenderungen nach letztem Abspeichern anzeigen - AlexanderM - 27.08.2009 15:27

' schrieb:Ein beliebter Fehler von Call Library Node Bastlern ist um String oder Arraybuffer in die die DLL etwas schreiben soll gar nicht oder zu klein anzulegen, BEVOR die Funktion aufgerufen wird.

Vielen Dank erneut, aber kann es sein dass mit diesem Satz etwas nicht ganz stimmt? Ich verstehe nicht richtig was du damit sagen möchtest...


Aenderungen nach letztem Abspeichern anzeigen - Y-P - 27.08.2009 16:53

Er meint es sicher so:

Ein beliebter Fehler von Call Library Node Bastlern ist es, String oder Arraybuffer, in die die DLL etwas schreiben soll, gar nicht oder zu klein anzulegen, BEVOR die Funktion aufgerufen wird.

Gruß Markus

' schrieb:Vielen Dank erneut, aber kann es sein dass mit diesem Satz etwas nicht ganz stimmt? Ich verstehe nicht richtig was du damit sagen möchtest...



Aenderungen nach letztem Abspeichern anzeigen - rolfk - 27.08.2009 19:51

Danke Markus

Rolf Kalbermatter


Aenderungen nach letztem Abspeichern anzeigen - AlexanderM - 31.08.2009 14:42

ja auch von mir ein Dank an euch beide, ich habe die Fehlermeldung jetzt wieder erhalten und zwar lautet sie:

Failure: "Filemgr.cpp" Line 5662, LabVIEW 6.1

es gibt so ein schoenes formular bei ni.com wo man das suchen kann, aber es gibt leider keinen direkten hinweis zu diesem Fehler, hat vielleicht jmand eine Idee? (Er tritt auf, nachdem ich eine Messung ueber laengere Zeit laufen lasse, wobei die Ausgabe alle 3 Stunden in einer neuen Datei geschieht)


Aenderungen nach letztem Abspeichern anzeigen - AlexanderM - 01.09.2009 14:44

In Ordnung, ich habe diesen Fehler jetzt beheben koennen. Den entscheidenden Hinweis gab es hier. Auch ich habe eine Referenz gefunden die nicht geschlossen, aber oft erzeugt wurde und sie geschlossen. Jedoch laeuft das Programm jetzt lang genug um mir wieder den dll Fehler vom Beginn auszugebenSad