Ich habe das folgende Problem. Ich möchte gern VI´s dynamisch einlinken in eine laufendes VI. Dieses funktioniert in der Entwicklungsumgebung auch recht gut aber sobald ich eine EXE darauserstellen will lassen sich die VI´s nicht mehr aufrufen. Die einzulinkenden VI´s werden nicht mitkompiliert!!! da sie im nachhinein noch ausgetauscht werden sollen.
hat damit schon jemand Erfahrungen gemacht?? Hab die Vermutung das dass daran liegt das diese VI´s nicht mitkompiliert werden.
:?:
und "Add Dynmic VI..." wurden benutzt?
Bitte seid doch etwas genauer in den Beschreibungen!
nein, auch mit absicht nicht. es geht ja darum das vi´s später eingebunden werden sollen, und diese sollen/sollten nicht kompiliert werden müssen.
gewissen vi´s sollen später einfach nachgefertigt werden iohne das das gesamte prog. neu kompiliert werden muss
Ich habe mal eine Software mit dem VI Server geschrieben (derzeit mit 51 PlugIns.)
Bei dem Exe bilden werden die Plug Ins nicht angegeben. Die Software lädt zu Laufzeit aus einem fest definierten Verzeichnis alle VI.
Achtung die Pattern der VI müssen alle gleich dem VI Server Pattern sein, sonst gibt es zu Laufzeit einen Fehler.
Gruß Sascha
Sascha,
sofern auf dem Rechner auch die Entwicklungsumgebung installiert ist kann ich mir das vorstellen - die VIs werden zur Laufzeit compiliert.
Was geschieht aber auf einem Rechner ohne Entwicklungsumgebung?
Manfred
@sgersing wurde/wird das programm immer neu kompiliert wenn ein plugin dazu gefügt wurde?? ...und wurden die plugin´s auch selber an sich kompliert?
@ malef
Also hat etwas gedauert, ich habe es extra noch mal probiert.
Das Programm funktioniert auch ohne die Entwicklungsumgebung die Runtime engine reicht aus.
@Quetzalcoatl
Nein die PlugIN VI werden nicht kompiliert werder beim Erstellen des Server VI noch später wenn ein neues dazu kommt.
Hi Quetzalcoatl,
dynamische VIs in eine bereits compiliertes EXE-VI einzubinden ist kein Problem. Man muß nur berücksichtigen, sofern man keine absolute Pfadangabe benutzt, das sich die "EXE-Datei" wie eine Library verhält.
D.h. will man ein VI einladen, welches im gleichen Verzeichnis liegt, wie das EXE-Programm, so muss man zweimal (!) die Funktion "Strip Pah" benutzen, um in das Verzeichnis zu gelangen.
Anschließend braucht man nur noch mit "Build Path" den VI-Namen ranhängen.
Für alle die eine Uni Lösung suchen (zumindestens mit LV 6.1 getestet):
Man programiere ein VI, welches per Initdatei ein VI dynamisch lädt und ausführt und mache hieraus ein EXE-Programm.
Dann brauch man sich bei seiner Main-Anwendung nicht mehr die Gedanken um die verflixten Pfade zu machen, wenn es später dann mal als Exe laufen soll.
Man brauch halt nur immer dieses mini-Exe-Programm mitgeben und in der Initdatei den relativen Pfad zum Hauptprogramm anzugeben.
Gruß
Oliver
Joa
der Witz an der Sache ist das ich das genauso schon gemacht habe...nur das weigert sich zu laufen.
Alle Tips die ihr mir hier dankenderweise gegeben habt waren/sind schon eingebaut gewesen.
Naja muss wohl ne Einstellungssache sein
Hi Quetzalcoatl,
probiere mal das Progi aus.
Habe ich aber noch nicht auf einem LV freien Rechner probiert...
Gruß
Oliver