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 

Exe erstellen



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!

15.09.2010, 09:15
Beitrag #1

Don_Corleone Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 60
Registriert seit: Sep 2010

2011 DS2
2010
DE

79350
Deutschland
Exe erstellen
Hallo Zusammen,

die Suche lieferte mir zu diesem Thema leider nichts brauchbares...
Problem:
Sobald mein Programm (exe), welches ich aus den ganzen VIs erstellt habe, auf eine Datei zugreifen will die in einem bestimmten Ordner liegt (relativer Pfad in der VI) kommt eine Fehlermeldung das die Datei nnicht geöffnet werden konnte. Ich vermute dass der Pfad nach dem Erstellen der Exe nicht mehr stimmt, kann das sein?
In einem Online-Tutorial von NI wird etwas von einem Property-Node (Applikation Kind) erzählt welches ein Case steuert (Pfadanpassung)... aber irgendwie komm ich nicht damit klar.
Kann mir vielleicht jemand kurz erklären wie ich diesen Eigenschaftsknoten korrekt einbinde? Oder gibt es noch eine andere Möglichkeit?


Danke
der Don


Aso: LabVIEW 8.6
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
15.09.2010, 09:20
Beitrag #2

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Exe erstellen
LVF-Link:
http://www.labviewforum.de/index.php?s=&am...st&p=101493

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.09.2010, 15:19
Beitrag #3

Don_Corleone Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 60
Registriert seit: Sep 2010

2011 DS2
2010
DE

79350
Deutschland
Exe erstellen
Hi Jens,

danke für den Link.
Könntest Du vielleicht die angehängte VI etwas genauer erklären vor allem die Zusammenhänge? Bin der absolute LabVIEW-Beginner... nicht mal gefährliches Halbwissen bei mir. ;-)
Der Vorgang in der Case ist mir klar, der Rest eher schleierhaft :-).

Gruß
der Don

LabVIEW 8.6

Sonstige .vi  app_kind.vi (Größe: 10,8 KB / Downloads: 264)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
15.09.2010, 22:17
Beitrag #4

jg Offline
CLA & CLED
LVF-Team

Beiträge: 15.864
Registriert seit: Jun 2005

20xx / 8.x
1999
EN

Franken...
Deutschland
Exe erstellen
Was genau willst du erklärt haben?

Die Funktion "Current VI's path" liefert dir den Dateipfad eines VI inkl. VI-Dateiname. Solange du in der Entwicklungsumgebung bist, ist das z.B. "C:Dir1Dir2Dir3name.vi". Einmal "Strip Path" macht daraus "C:Dir1Dir2Dir3", genau das, was man haben will.

Jetzt kannst du in LabVIEW auch eine Exe mit dem Application Builder erstellen. Eine Eigenheit von LabVIEW ist, dass dabei - vereinfacht gesprochen - eigentlich nur alle benötigen VIs zusammengepackt werden. Die Funktion "Current VI's path" funktioniert also weiterhin, liefert jetzt aber "C:Dir1Dir2Dir3Main.exename.vi". Um jetzt also zum Ablageverzeichnis der Exe zu kommen, braucht es einmal Strip-Path mehr.

Will man es universell einsetzen, dann benutzt man z.B. das VI, dass du hochgeladen hast. Denn die verwendete PropertyNode "Application Kind" liefert, ob sich das VI gerade in einer Exe (->Rückmeldung Run Time System") oder nicht befindet.

Das alles ist jetzt nicht gerade das unbedingt nötige Einsteiger-Wissen für einen LabVIEW-Neuling, und ohne ein grundlegenden Verständnis, was eine PropertyNode (Eigenschaftsknoten) uvm. ist, auch nicht einfach zu verstehen. Aber das kommt noch.

Gruß, Jens

Wer die erhabene Weisheit der Mathematik tadelt, nährt sich von Verwirrung. (Leonardo da Vinci)

!! BITTE !! stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort!

Einführende Links zu LabVIEW, s. GerdWs Signatur.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.09.2010, 06:33 (Dieser Beitrag wurde zuletzt bearbeitet: 16.09.2010 06:45 von Don_Corleone.)
Beitrag #5

Don_Corleone Offline
LVF-Gelegenheitsschreiber
**


Beiträge: 60
Registriert seit: Sep 2010

2011 DS2
2010
DE

79350
Deutschland
Exe erstellen
Ich denke ich hab's verstanden, danke für die Erklärung!
Werd die VI mal einbinden, vielleicht schaff ich das ja ohne Hilfe :-).

Gruß

PS: Die Beschaltung der Property Node in der VI (Bool, Text, Leerfeld) ist mir nicht schlüssig, kannst Du dazu was sagen?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.09.2010, 08:08
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.469
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
Exe erstellen
Hallo Don,

wann immer du auf einen VI/Funktions-Eingang rechtsklickst und Erstelle->Konstante wählst, wird die passende Konstante erstellt.
Hier ist es eine ErrorCluster-Konstante für den ErrorIn-Eingang der Property-Node. (Die wäre hier nicht nötig gewesen, da der Default-Wert sowieso auf "no error" gesetzt ist.) Der ErrorCluster ist sehr wichtig, da sich 1) Fehlermeldungen weiterreichen lassen und 2) damit wunderbar der Datenfluss gesteuert werden kann...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
Antwort schreiben 


Gehe zu: