LabVIEWForum.de
Kommandozeilenargumente aktualisieren - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: Kommandozeilenargumente aktualisieren (/Thread-Kommandozeilenargumente-aktualisieren)



Kommandozeilenargumente aktualisieren - Trinitatis - 14.03.2014 17:02

Hallo zusammen,

ich habe ein Problem, von dem ich nicht weiß, ob es eine LV-Lösung gibt.
Ich starte aus dem Explorer / TC oä eine Datei mit einer von mir in LV geschriebenen Exe an. Dieser Exe wird der entsprechende Pfad per Kommandozeilenargument übergeben und sie kann aich darauf beziehen. Nun klicke ich im Explorer auf einen anderen Dateipfad, der wieder mit meiner LV-EXE geöffnet wird. Da diese EXE aber schon läuft, wird sie einfach in den Vordergrund geholt (ich würde auch nicht wollen, dass eine 2. Instanz aufgeht).
Nun frage ich mich, ob die laufende Exe irgendwie den angeklickten Dateipfad übergeben bekommen kann - die Kommandozeilenargumente enthalten noch die Einträge des ersten Aufrufes.

Kurz zusammengefasst: Ich möchte, ähnlich wie der WMP, dass eine im Explorer doppelt geklickte Musikdatei abgespielt wird und bei einem Doppelklick auf eine andere Datei eben diese gespielt wird.


Hat da jemand eine Idee zu ?

Gruß, Marko


RE: Kommandozeilenargumente aktualisieren - BNT - 14.03.2014 21:54

Hi
Eine LabVIEW-Exe kann nur einmal gestartet werden. Du musst eine Kopie umbenennen. Dann geht's.

Gruß Holger


RE: Kommandozeilenargumente aktualisieren - jg - 15.03.2014 11:06

@BNT: Widerspruch: Über den entsprechenden Ini-Eintrag kann man eine Exe auch mehrfach starten.
allowMultipleInstances = TRUE

Gruß, Jens


RE: Kommandozeilenargumente aktualisieren - Lucki - 15.03.2014 11:38

Also ich habe Marko aber so verstanden, dass er gar nicht mehrere Instanzen laufen lassen will.
Es wären zwei Szenarien denkbar:
S1: Beim Aufruf der Exe soll eine evtl. schon laufende EXE geschlossen werden, und dieselbe Exe, mit neuem Kommandozeilenparameter, wird gleich wieder geöffnet. Hier habe ich allerdings das Gefühl, dass das nicht machbar ist.
S2: Beim zweiten Aufruf laufen erst mal beide Instanzen. Die erste Aktion der neu hinzugekommenen Instanz ist aber, evtl. vorhandene ältere Instanzen zu beenden. Habe hier auch keine Anhnung wie man das machen könnte, mein Gefühl sagt mir nur, dass das gehen könnte.


RE: Kommandozeilenargumente aktualisieren - BNT - 15.03.2014 13:41

(15.03.2014 11:06 )jg schrieb:  @BNT: Widerspruch: Über den entsprechenden Ini-Eintrag kann man eine Exe auch mehrfach starten.
allowMultipleInstances = TRUE

Gruß, Jens

Vielen Dank, wieder was dazu gelernt.


RE: Kommandozeilenargumente aktualisieren - Trinitatis - 16.03.2014 10:48

Hallo zusammen,

danke für eure Überlegungen!
Also eine neue 2. Instanz sollte es nicht sein, aber die Idee, eine neue zu öffnen, welche die alte dann schließt, ist sicher eine Idee. Da denke ich mal weiter drauf rum.



Gruß, Marko


RE: Kommandozeilenargumente aktualisieren - GerdW - 16.03.2014 20:00

Hallo Marko,

mich würde es stören, wenn immer eine Instanz geschlossen wird, um gleich darauf eine neue zu öffnen.

Wenn du schon eine Abfrage programmierst, ob schon eine Instanz läuft, dann erstell doch gleich noch eine einfache Möglichkeit, der schon laufenden Instanz die neuen Parameter mitzuteilen! Netzwerkfunktionen (entweder selbst per TCP/UDP oder per SharedVariable) bieten sich für sowas an.


RE: Kommandozeilenargumente aktualisieren - Trinitatis - 16.03.2014 20:57

(16.03.2014 20:00 )GerdW schrieb:  Wenn du schon eine Abfrage programmierst, ob schon eine Instanz läuft, dann erstell doch gleich noch eine einfache Möglichkeit, der schon laufenden Instanz die neuen Parameter mitzuteilen! Netzwerkfunktionen (entweder selbst per TCP/UDP oder per SharedVariable) bieten sich für sowas an.

Hallo Gerd,

danke für die Idee! Das probier´ ich aus.


Gruß, Marko