LabVIEWForum.de
*.exe einmal starten - Druckversion

+- LabVIEWForum.de (https://www.labviewforum.de)
+-- Forum: LabVIEW (/Forum-LabVIEW)
+--- Forum: LabVIEW Allgemein (/Forum-LabVIEW-Allgemein)
+--- Thema: *.exe einmal starten (/Thread-exe-einmal-starten)



*.exe einmal starten - geist07 - 25.09.2008 09:35

Hallo zusammen,
hab folgendes PB, ich kann von LV aus über einen Button eine *.exe starten und ausführen. Durch wiederholtes drücken wird die *.exe mehrmals gestartet, kann ich dass irgendwie unterbinden? Weiß jemand ob ich zuvor fragen kann, ob die *.exe bereits gestartet ist?

PS: Den Eingang "Auf Abschluss der Operation warten" des VIs "Systembefehl ausführen" kann ich nicht verwenden, da dieses VI während der Ausführungsdauer der *.exe für andere Operationen zur Verfügung stehen muss.

Danke für Tipps


*.exe einmal starten - RoLe - 25.09.2008 09:47

Eigentlich ist normal, das nur eine Instanz gestartet werden kann.
Beinflussen kann man das in der Applikation.ini Datei mit "allowmultipleinstances=True"


*.exe einmal starten - geist07 - 25.09.2008 10:24

' schrieb:Eigentlich ist normal, das nur eine Instanz gestartet werden kann.
Beinflussen kann man das in der Applikation.ini Datei mit "allowmultipleinstances=True"


Meine exe ist aber mehrmals startbar, vergleichbar mit excel wenn dieses öfters gestartet wir.
Eine entsprechende ini-Datei kann ich nicht finden, es sind nur die Dateien aus dem Anhang vorhanden.
[attachment=14530]


*.exe einmal starten - RoLe - 25.09.2008 10:38

' schrieb:Meine exe ist aber mehrmals startbar, vergleichbar mit excel wenn dieses öfters gestartet wir.
Eine entsprechende ini-Datei kann ich nicht finden, es sind nur die Dateien aus dem Anhang vorhanden.

Ach so, ich dachte es wäre eine selber gemachte LV-Exe.
In dem Falle, musst du schauen, ob die Exe bereits als Prozess ausgeführt wird.


*.exe einmal starten - Y-P - 25.09.2008 12:03

Ich nehm' die Frage schon mal vorweg:
Wie geht das? Big Grin

Gruß Markus

' schrieb:Ach so, ich dachte es wäre eine selber gemachte LV-Exe.
In dem Falle, musst du schauen, ob die Exe bereits als Prozess ausgeführt wird.



*.exe einmal starten - RoLe - 25.09.2008 12:13

' schrieb:Ich nehm' die Frage schon mal vorweg:
Wie geht das? Big Grin

Mit .NET ganz einfach.
Man nimmt das Example "SimpleTaskMonitor"

etwas komplizierter mit WIN-API aufrufen.
- EnumProcesses
- OpenProcess
- GetModuleFileNameExA

alles klar Cool


*.exe einmal starten - Y-P - 25.09.2008 12:29

..... und hier ist das VI dazu, wie man die laufenden Prozesse in ein String-Array lesen kann. Danke RoLe.

[attachment=14532]
Lv80_img

Gruß Markus


*.exe einmal starten - geist07 - 25.09.2008 14:38

Dank euch beiden, jetzt brauch ich nur noch das Array nach meinem Prozess durchsuchenWink