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 

System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht



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!

16.08.2012, 07:53
Beitrag #1

MartinLoreck Offline
LVF-Grünschnabel
*


Beiträge: 40
Registriert seit: Jul 2011

11
2011
EN


Deutschland
System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo
vorweg, ich beziehe mich auf Labview 8.5 und danke fürs Lesen Smile

Ich möchte mit 7zip einige Sachen packen und entpacken. Das Packen klappt auch.
Jedoch erhalte ich bei meiner anderen vi die für das entpacken verantwortlich ist immer den Ausgabefehler "Die Syntax fr den Dateinamen, Verzeichnisnamen oder die Datentr„gerbezeichnung ist falsch."
Obwohl das was ich in die System Exec vi hineinwerfe als Kommando für die manuell ausgeführte Kommandozeile funktioniert

Kann mir jemand da vielleicht helfen?

Ich häng mal das vi an, wie gesagt 8.5

Danke im voraus


Angehängte Datei(en)
8.5 .vi  testExtracting.vi (Größe: 25,9 KB / Downloads: 260)
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 08:25
Beitrag #2

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo Martin,

Offtopic
So könnte dein VI auch aussehen:
   
Ich finde es so wesentlich übersichtlicher, insbesondere die große AppendString-Funktion ist immer fehlerträchtig...

Zum Thema:
Probier doch mal, das Kommando fest (per String-Control) vorzugeben, um zu testen, wann es funktioniert. Dann diesen Fall nachprogrammieren...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 08:41
Beitrag #3

MartinLoreck Offline
LVF-Grünschnabel
*


Beiträge: 40
Registriert seit: Jul 2011

11
2011
EN


Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo Gerd,
Ja das sieht gut aus was du da aufgeräumt hast, jedoch kenne ich diese Funktion überhaupt nicht.
Und muss ich sagen, dass mein String am Ende auf jeden Fall mit dem übereinstimmt, den ich in der normalen commandline benutze. Das habe ich mir am Ende bei dem Concatenated String Indicator ausgeben lassen und habs verglichen. Ich weiß nicht was ich da noch ändern soll. Was macht Labview da anders?
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 08:45 (Dieser Beitrag wurde zuletzt bearbeitet: 16.08.2012 08:47 von GerdW.)
Beitrag #4

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo Martin,

die Funktion heißt FormatIntoString.
Ich sah auch keinen Grund, lokale Variablen zu nutzen, wenn man die (bisherigen) Indicator auch in Controls umwandeln kann.

- Du könntest z.B. irgendwelche Whitespaces durch Tippfehler drin versteckt haben.
- Du könntest Probleme aufgrund nicht gesetzten "WorkDir"-Eingangs haben (Kontexthilfe zu SystemExec lesen).

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 09:17 (Dieser Beitrag wurde zuletzt bearbeitet: 16.08.2012 09:21 von MartinLoreck.)
Beitrag #5

MartinLoreck Offline
LVF-Grünschnabel
*


Beiträge: 40
Registriert seit: Jul 2011

11
2011
EN


Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hi Gerd,
das mit dem WorkDir hab ich getestet und es funktioniert auch damit nicht. Das aus der Hilfe unterstreicht das.
Gibt es denn eine Möglichkeit das System Exec vi so auszuführen, dass es nach Ausführung das cmd Fenster offen lässt? Dann könnte man vielleicht mehr erfahren?
Auch der Batch Befehl "PAUSE" wird ja einfach ignoriert ;(

Gruß Martin

EDIT: Das mit dem geöffnet lassen bringt keinen Erfolg ;(
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 09:32 (Dieser Beitrag wurde zuletzt bearbeitet: 16.08.2012 09:33 von GerdW.)
Beitrag #6

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo Martin,

Zitat:Auch der Batch Befehl "PAUSE" wird ja einfach ignoriert ;(
Wie rufst du den denn auf?

Schreib doch mal deine Befehle in eine Batchdatei (also sowohl "7zip" als auch "pause") und rufe diese Batchdatei auf...

Zitat:Gibt es denn eine Möglichkeit das System Exec vi so auszuführen, dass es nach Ausführung das cmd Fenster offen lässt?
Nein. Entweder die Batchdatei läuft noch und das Fenster bleibt offen oder die Batchdatei ist abgearbeitet und die zugehörige Shell schließt sich. Dies ist kein SystemExec-Feature, sondern eine Eigenschaft der Shell.

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.08.2012, 09:34
Beitrag #7

MartinLoreck Offline
LVF-Grünschnabel
*


Beiträge: 40
Registriert seit: Jul 2011

11
2011
EN


Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Also sehr kurios, es ist gelöst

Bei meinem Aufruf des Packens muss ich dem Befehl ein cmd /c voranstellen
und beim Entpacken funktioniert das ganze nur ohne das cmd /c

ich weiß nicht warum aber nun geht es

Danke Gerd für deine Mühe
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 09:50
Beitrag #8

MartinLoreck Offline
LVF-Grünschnabel
*


Beiträge: 40
Registriert seit: Jul 2011

11
2011
EN


Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
(16.08.2012 09:32 )GerdW schrieb:  Nein. Entweder die Batchdatei läuft noch und das Fenster bleibt offen oder die Batchdatei ist abgearbeitet und die zugehörige Shell schließt sich. Dies ist kein SystemExec-Feature, sondern eine Eigenschaft der Shell.

Doch das geht. Statt dem cmd /c schreibt man cmd /k und bei wait until eine false Konstante. Dann bleibt das command offen.
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.08.2012, 09:53 (Dieser Beitrag wurde zuletzt bearbeitet: 16.08.2012 09:54 von GerdW.)
Beitrag #9

GerdW Offline
______________
LVF-Team

Beiträge: 17.467
Registriert seit: May 2009

LV2021
1995
DE_EN

10×××
Deutschland
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
Hallo Martin,

das deckt sich mit meiner Aussage: Die Batchdatei endet nicht, da
Code:
/K      Führt den Befehl in der Zeichenfolge aus und endet dann nicht.
Batchdatei läuft noch, Fenster bleibt offen...

Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
17.08.2012, 09:47 (Dieser Beitrag wurde zuletzt bearbeitet: 17.08.2012 09:49 von rolfk.)
Beitrag #10

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
RE: System Exec - was in der normalen Console funktioniert, geht mit der LV vi nicht
(16.08.2012 07:53 )MartinLoreck schrieb:  Hallo
vorweg, ich beziehe mich auf Labview 8.5 und danke fürs Lesen Smile

Ich möchte mit 7zip einige Sachen packen und entpacken. Das Packen klappt auch.
Jedoch erhalte ich bei meiner anderen vi die für das entpacken verantwortlich ist immer den Ausgabefehler "Die Syntax fr den Dateinamen, Verzeichnisnamen oder die Datentr„gerbezeichnung ist falsch."
Obwohl das was ich in die System Exec vi hineinwerfe als Kommando für die manuell ausgeführte Kommandozeile funktioniert

Kann mir jemand da vielleicht helfen?

Ich häng mal das vi an, wie gesagt 8.5

Danke im voraus

cmd ist nur die commandshell und die macht Dinge wie current directory resolution, batch file Interpretation, Ausführen von Filetyp spezifischen default Programmen anhand der Registry und die Ausführung von Shell Kommandos. Das sind also die DOS Kommandos die nicht als executable in <Windows>/<System> vorhanden sind sondern in der Shell selber ausgeführt werden.

Da Du den Pfad zu 7-z als vollen Pfad anzugeben scheinst, sollte cmd eigentlich nicht nötig sein. LabVIEW lässt Windows einfach einen Prozess erzeugen mit dem ganzen String. Windows interpretiert den ersten Parameter als Prozess der gestartet werden soll und übergibt diesem den Rest des Strings als Parameter. Aber ich sehe dass Du den Pfad zu 7-z in Anführungszeichen hast, und es könnte sein dass die Prozesserzeugung in Windows keine Quoted Strings parsen kann. Deshalb funkt es mit cmd voran, das kann durch CreateProcess() richtig interpretiert werden und cmd macht dann den Rest.

Nun noch kurz zur ZIP File Erzeugung. Es gibt auch eine OpenG Library mit der man in LabVIEW direkt ZIP Files packen und entpacken kann. Am einfachsten kann man die mit dem VIPM installieren.

Rolf Kalbermatter
Technische Universität Delft, Dienst Elektronik und Mechanik
https://blog.kalbermatter.nl
Webseite des Benutzers besuchen Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Möglicherweise verwandte Themen...
Themen Verfasser Antworten Views Letzter Beitrag
  Die Kommunikation mit dem VI funktioniert nicht Benutzer02 11 6.099 18.10.2021 09:25
Letzter Beitrag: TpunktN
Sad VI funktioniert und EXE nicht Mostro2502 21 9.484 17.06.2020 09:55
Letzter Beitrag: Mostro2502
  Inhalt einer Baumstruktur über Methodenknoten speichern funktioniert nicht... enone 2 3.886 10.05.2019 10:19
Letzter Beitrag: enone
  Schrittmotor Nema 17 per LabVIEW funktioniert nicht! TTT 5 6.243 27.04.2018 08:20
Letzter Beitrag: Freddy
  Mehrere Befehle über System Exec VI creo_123 9 6.895 04.05.2017 06:03
Letzter Beitrag: creo_123
  Formelknoten "funktioniert nicht" Peppiiii 8 5.970 18.04.2017 17:42
Letzter Beitrag: GerdW

Gehe zu: