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 

Standardeingabe/Standardausgabe



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.04.2008, 14:38
Beitrag #1

s200rs Abwesend
LVF-Gelegenheitsschreiber
**


Beiträge: 75
Registriert seit: Jul 2005

7.1 / 8.5.1
2002
DE

02826
Deutschland
Standardeingabe/Standardausgabe
Hallo,

Ich habe ein Programm, das normalerweise über die Kommandozeile gesteuert wird, ich nun aber über LabVIEW ansprechen muß.

Wenn ich es über "Systembefehl ausführen" starte, kann ich über "Standardeingabe" ein paar Kommandos übergeben, die man sonst eintippen würde, und bekomme die Antwort des Programms, die normalerweise auf dem Bildschirm erscheint, bzw. eine Fehlermeldung über Standardausgabe bzw. Standardfehler des Sub-VIs und kann mir diese in entsprechenden Anzeigelementen ansehen.

So weit so gut, nur bekomme ich die Antwort erst, wenn das Programm beendet ist. Ich möchte aber, daß das Programm am Laufen bleibt und ich die Antwort abrufen kann, sobald die Eingabe getätigt wurde. Ich kann ja nicht für jedes Kommando das Programm neu starten und initialisieren.

Also müßte ich quasi eine Adresse einrichten, auf die ich von LV aus die Daten schreibe und eine von der ich die Antwort abhole, und somit die Standardeingabe Tastatur und die Standardausgabe Monitor im eingentlichen Sinn auf mein LV-Programm ändern.

Welche Möglichkeit gibt es da?

Gruß Andreas

________________

LV 7.1; 8.5
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
16.04.2008, 15:49
Beitrag #2

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Standardeingabe/Standardausgabe
Hast Du schon mal bei "wait until completion" ein "False" angeschlossen? Vielleicht hilft Dir auch das mit Deinen Befehlen. Hmm

Gruß Markus

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.04.2008, 16:24
Beitrag #3

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Standardeingabe/Standardausgabe
' schrieb:Also müßte ich quasi eine Adresse einrichten
Im Prinzip ja. Die "Adresse" wäre dann ein gemeinsamer Speicherbereich - sowas geht - aber mit LV ?

Du könntest mal folgendes probieren:

Früher konnte man das Eingabemedium und das Ausgabemedium angeben. Das Standard-Eingabemedium ist die Tastatur, das Standard-Ausgabemedium ist der Bildschirm. Beide konnte man umleiten - z.B. in eine Datei. Die Syntax hierfür lautete: MyProgram >Input <Output. (Ob es zwei Klammern << bzw. >> sein mussten, weiß ich nicht mehr). Probier doch mal folgendes: MyProgram <C:MyIn.txt >MyOut.txt. Du müsstest dann praktisch in das File C:Mytxt schreiben und das File c:MyOut.txt ständig scannen.

Ob das heute noch geht, weiß ich nicht.

[*grübel*]

Hin Senden zum Programm würde man mit SendInput() hinbekommen. Das wäre halbwegs "Stand der Technik". Vom Programm aus sieht das dann aus, als ob jemand die Tastatur bedient. Den Rest müsste man machen mit der Umleitung vom Bildschirm in ein (sequenzielles) File.

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.04.2008, 17:19
Beitrag #4

IchSelbst Offline
LVF-Guru
*****


Beiträge: 3.697
Registriert seit: Feb 2005

11, 14, 15, 17, 18
-
DE

97437
Deutschland
Standardeingabe/Standardausgabe
' schrieb:Du könntest mal folgendes probieren:
Schade, geht nicht (nicht mehr?).

Jeder, der zur wahren Erkenntnis hindurchdringen will, muss den Berg Schwierigkeit alleine erklimmen (Helen Keller).
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
16.04.2008, 22:44 (Dieser Beitrag wurde zuletzt bearbeitet: 16.04.2008 22:45 von rolfk.)
Beitrag #5

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Standardeingabe/Standardausgabe
' schrieb:Hallo,

Ich habe ein Programm, das normalerweise über die Kommandozeile gesteuert wird, ich nun aber über LabVIEW ansprechen muß.

Wenn ich es über "Systembefehl ausführen" starte, kann ich über "Standardeingabe" ein paar Kommandos übergeben, die man sonst eintippen würde, und bekomme die Antwort des Programms, die normalerweise auf dem Bildschirm erscheint, bzw. eine Fehlermeldung über Standardausgabe bzw. Standardfehler des Sub-VIs und kann mir diese in entsprechenden Anzeigelementen ansehen.

So weit so gut, nur bekomme ich die Antwort erst, wenn das Programm beendet ist. Ich möchte aber, daß das Programm am Laufen bleibt und ich die Antwort abrufen kann, sobald die Eingabe getätigt wurde. Ich kann ja nicht für jedes Kommando das Programm neu starten und initialisieren.

Also müßte ich quasi eine Adresse einrichten, auf die ich von LV aus die Daten schreibe und eine von der ich die Antwort abhole, und somit die Standardeingabe Tastatur und die Standardausgabe Monitor im eingentlichen Sinn auf mein LV-Programm ändern.

Welche Möglichkeit gibt es da?

Gruß Andreas

Das geht mit der OpenG pipe library die ich mal entwickelt habe. Allerdings ist diese noch nicht als OpenG library released, da sie noch immer im Beta Stadium ist. Deshalb wirst Du Dir die Files vom CVS Server runterholen müssen. Das kann entweder über einen CVS Client wie etwas Tortoise CVS oder auch über obengenannte HTML Browse Seite da es nicht so viele VIs sind und deshalb durchaus File für File gedownloaded werden kann.

Beta Stadium will sagen, es läuft bei mir normalerweise für die Dinge dich ich tun will aber es gibt da durchaus noch Möglichkeiten dass das manchmal nicht immer auf Anhieb funkzt.

Du wirst vor allem interessiert sein an der Library selber mit der entsprechenden DLL die Du im "source" Verzeichnis findest. Zudem können die VIs im "test" Verzeichnis als eine Art Vorbild dienen wie man mit diesen VIs umgehen kann. IchSelbst wird wohl eher am Inhalt des Verzeichnisses "c_source" interessiert sein Wink-2

Rolf Kalbermatter

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
17.04.2008, 07:42
Beitrag #6

s200rs Abwesend
LVF-Gelegenheitsschreiber
**


Beiträge: 75
Registriert seit: Jul 2005

7.1 / 8.5.1
2002
DE

02826
Deutschland
Standardeingabe/Standardausgabe
' schrieb:Hast Du schon mal bei "wait until completion" ein "False" angeschlossen? Vielleicht hilft Dir auch das mit Deinen Befehlen. Hmm

Jo, hab ich, bringt aber nichts, weil ich dann ja keine Möglichkeit mehr habe, ein Kommando zum Beenden des Programms während der Laufzeit des VIs zu übergeben.

Ich denke, daß das, was Rolf geschrieben hat, das sein könnte, was ich suche. Habe mir die Dateien runtergeladen, sie lassen sich aber weder mit LV 7.1 noch mit LV 8.5 öffnen, da kommt immer die Fehlermeldung "Dies ist keine Ressourcen-Datei" oder "Dies ist keine zulässige LabVIEW-Datei"

Wo könnte das Problem liegen?

Gruß Andreas

________________

LV 7.1; 8.5
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Anzeige
18.04.2008, 21:07
Beitrag #7

rolfk Offline
LVF-Guru
*****


Beiträge: 2.305
Registriert seit: Jun 2007

alle seit 6.0
1992
EN

2901GG
Niederlande
Standardeingabe/Standardausgabe
' schrieb:Jo, hab ich, bringt aber nichts, weil ich dann ja keine Möglichkeit mehr habe, ein Kommando zum Beenden des Programms während der Laufzeit des VIs zu übergeben.

Ich denke, daß das, was Rolf geschrieben hat, das sein könnte, was ich suche. Habe mir die Dateien runtergeladen, sie lassen sich aber weder mit LV 7.1 noch mit LV 8.5 öffnen, da kommt immer die Fehlermeldung "Dies ist keine Ressourcen-Datei" oder "Dies ist keine zulässige LabVIEW-Datei"

Wo könnte das Problem liegen?

Gruß Andreas

Dein Webbrowser spinnt und beschädigt die Dateien beim Downloaden weil er sie als Textdatei behandeln will. Am Besten ginge es halt über direkten CVS Zugang und nur zum donwloaden geht das sogar anonymous.

Aber um es was leichter zu machen habe ich die VIs mal in ein ZIP File gepackt. Sind LabVIEW 6.0(.2) Format für wen das interessiert.


Sonstige .zip  pipe.zip (Größe: 221,77 KB / Downloads: 413)


Rolf Kalbermatter

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
21.04.2008, 09:02
Beitrag #8

s200rs Abwesend
LVF-Gelegenheitsschreiber
**


Beiträge: 75
Registriert seit: Jul 2005

7.1 / 8.5.1
2002
DE

02826
Deutschland
Standardeingabe/Standardausgabe
' schrieb:Aber um es was leichter zu machen habe ich die VIs mal in ein ZIP File gepackt. Sind LabVIEW 6.0(.2) Format für wen das interessiert.

Rolf Kalbermatter

Hallo,

vielen dank, konnte die VIs jetzt öffnen und verwenden, und - ES FUNTKIONIERT Yahoo

Nochmals vielen Dank, das hat mir ein ganzes Stück weitergeholfen.

Gruß Andreas

________________

LV 7.1; 8.5
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.04.2008, 10:17
Beitrag #9

Y-P Offline
☻ᴥᴥᴥ☻ᴥᴥᴥ☻
LVF-Team

Beiträge: 12.612
Registriert seit: Feb 2006

Developer Suite Core -> LabVIEW 2015 Prof.
2006
EN

71083
Deutschland
Standardeingabe/Standardausgabe
Kannst Du das Beispiel (inkl. SubVIs) mal hochladen. Da haben bestimmt einige (inkl. mir Big Grin) Interesse daran.

Gruß Markus

' schrieb:Hallo,

vielen dank, konnte die VIs jetzt öffnen und verwenden, und - ES FUNTKIONIERT Yahoo

Nochmals vielen Dank, das hat mir ein ganzes Stück weitergeholfen.

Gruß Andreas

--------------------------------------------------------------------------
Bitte stellt mir keine Fragen über PM, dafür ist das Forum da - andere haben vielleicht auch Interesse an der Antwort !!
--------------------------------------------------------------------------
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
21.04.2008, 10:41
Beitrag #10

s200rs Abwesend
LVF-Gelegenheitsschreiber
**


Beiträge: 75
Registriert seit: Jul 2005

7.1 / 8.5.1
2002
DE

02826
Deutschland
Standardeingabe/Standardausgabe
' schrieb:Kannst Du das Beispiel (inkl. SubVIs) mal hochladen. Da haben bestimmt einige (inkl. mir Big Grin) Interesse daran.

Gruß Markus

Ist ungünstig, weil das Programm, das ich einbinde mit einem Gerät kommuniziert und beim Start, wenn das Gerät nicht angeschlossen ist, einen Fehler bringt und sich sofort wieder beendet.

Aber ich lade es etwas abgewandelt hoch, so daß man die Kommandozeile editieren kann.

Außerdem gibt's in der Zip-Datei von Rolf Kalbermatter ein Unterverzeichnis namens "tests" wo ein paar verschiedene Beispiele drin sind.


Sonstige .vi  PipeTest_LV85.vi (Größe: 37,45 KB / Downloads: 420)
LabVIEW 8.5

Gruß Andreas

@Rolf K.: was bedeutet überhaupt das "FD" bei "standard error fd" in z.B. "Open System Command.vi"

________________

LV 7.1; 8.5
Alle Beiträge dieses Benutzers finden
Diese Nachricht in einer Antwort zitieren to top
Antwort schreiben 


Gehe zu: