INFO: Dieses Forum nutzt Cookies...
Cookies sind für den Betrieb des Forums unverzichtbar. Mit der Nutzung des Forums erklärst Du dich damit einverstanden, dass wir Cookies verwenden.

Es wird in jedem Fall ein Cookie gesetzt um diesen Hinweis nicht mehr zu erhalten. Desweiteren setzen wir Google Adsense und Google Analytics ein.


Antwort schreiben 

Dieses Thema hat akzeptierte Lösungen:

Sub Vi in EXE einbinden



Wenn dein Problem oder deine Frage geklärt worden ist, markiere den Beitrag als "Lösung",
indem du auf den "Lösung" Button rechts unter dem entsprechenden Beitrag klickst. Vielen Dank!

14.06.2013, 08:50
Beitrag #11

LazyBoNe Offline
LVF-Grünschnabel
*


Beiträge: 15
Registriert seit: Jul 2012

11.0.1 (32bit)
2010
DE_EN


Sonstige
RE: Sub Vi in EXE einbinden
Ich habe die Lösung gefunden! Iwill
Error 7 in LV2009 running old VI's

Dieser Artikel sagt, NI kreierte eine schöne Construction. Builds aus den Versionen 8.x und früher erwarten in der EXE einen anderen Pfad zum dynamisch aufgerufenen VI als solche mit version 2009 und höher. Damit man keine Änderungen an den VI vornehmen muss, kann man den Knopf "use labview 8.x layout" im build unter advanced aktivieren. So funktioniert Herberts build dann auch bei mir in einem anderen Ordner.

Was nun für neue Projekt der LV Version 2009 und höher gilt bzgl. dynamisch aufgerufenen VI's:

Wenn das Programm im development modus gestartet wird, wollen dynamisch Aufgerufene VI's durch den realen Pfad auf der Harddisk aufgerufen werden. Ist ja eigentlich ganz logisch. Beispiel:
C:\Users\IRPT-Workstation01\Desktop\ProgressBar\Sub VIs\ProgressBar.vi
(main VI im Ordner C:\Users\IRPT-Workstation01\Desktop\ProgressBar\)

Wenn das VI als EXE gestartet wird wollen dynamisch aufgerufene VI's z.B. durch folgenden Pfad aufgerufen werden:
C:\Ordner1\Ordner2\Application.exe\Sub VIs\ProgressBar.vi
WENN
C:\Ordner1\Ordner2\
der Pfad ist, wo sich die EXE real auf dem Rechner befindet, hier Application.exe (Application directory Baustein verwenden)
UND
Sub VI\ProgressBar.vi
der Pfad ist, wo sich das dynamisch aufgerufene VI relativ zum main VI befunden hatte im development modus!


Dabei ist zu beachten, dass die dynamisch aufgerufenen VI in der build specifications datei unter Source Files in "always included" aufgenommen werden! Somit werden die Sub VI z.B. unter dem virtuellen Pfad C:\Ordner1\Ordner2\Application.exe\Sub VIs\ProgressBar.vi in die EXE eingebunden.

Ich hoffe ich konnte damit einigen LabVIEWERN viel Ahrg1 ersparen.

Nun kann ich auch wider ruhig schlafen.

Gruss
Matthias
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
14.06.2013, 18:27 (Dieser Beitrag wurde zuletzt bearbeitet: 14.06.2013 18:29 von Holy.)
Beitrag #12

Holy Offline
LVF-Stammgast
***


Beiträge: 339
Registriert seit: Sep 2008

2014
2007
EN

09XXX
Deutschland
RE: Sub Vi in EXE einbinden
Du kannst von VIs auch die Blockdiagramme entfernen und somit den Quellcode nicht weiter geben sondern nur das Kompilat. Dynamische Aufrufe werden sehr oft in VIs außerhalb der EXE gemacht. Insbesondere für Plugin-Anwendungen äußerst interessant da die Anwendung bei geänderten/neuen Plugins nicht verteilt werden muss sondern nur die Plugins selber. Gibt dann an der Stelle für diese Anwendungsfälle noch ne ganze Menge mehr Vorteile.

Dein Änderungsvorschlag ist somit eher nur für deine Wünsche sinnvoll weil das Beispiel zielte genau auf den dynamischen Aufruf von VIs neben der Anwendung ab!
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
30
Antwort schreiben 


Gehe zu: