Forum: PC-Programmierung XOJO, Mac: Shell-Ergebnis immer leer.


von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Wer Xojo kennt, weiss, dass dort auch ein Shell-Objekt gibt. Nach dessen 
Instanziierung mit z.B. "Dim s as new Shell" kann man mit "s.execute ... 
" Shell-Kommandos absetzen und per "d = s.readall" oder "d = s.result" 
die Ergebnisse einsammeln und parsen.

Nun habe ich einen Fall, wo aus Xojo heraus das Ergebnis immer leer 
bleibt, während exakt der gleiche Aufruf direkt im Terminal genau das 
richtige Ergebnis bringt.

Als Plan B habe ich das Ergebnis mit " ... > result.txt" in eine Datei 
umgeleitet. Auch hier ist es in Xojo so, dass zwar die Datei erstellt 
wird, diese aber leer ist. Direkt im Terminal funktioniert es ganz 
normal.

Bei den Aufrufen handelt es sich um die CLI-Version des Barcode-Readers 
"zbarimg". Unter Windows funktioniert die Version mit der Umleitung in 
eine Datei übrigens auch aus Xojo heraus, das direkte Lesen mit s.result 
oder s.readall aber ebenfalls nicht.

Probiere ich zur Sicherheit statt dem Aufruf von "zbarimg" dagegen mal 
ein anderes Shellkommando, wie "dir" oder "time" funktioniert das in 
jedweder Version.

Zurück zum Mac: Was könnte die Ursache für das Problem sein?

von Frank E. (Firma: Q3) (qualidat)


Lesenswert?

Ich glaube, ich habe das Problem gelöst. Die Shell in Xojo ist einfach 
'n Ticken dümmer als das Terminal. Während im Terminal der Aufruf des 
Namens "zbarimg ..." genügt (vermutlich kann das Terminal die 
Umgebungsvariablen lesen), bedarf es in der Shell des kompletten Pfades. 
Den habe ich mit "mdfind zbarimg" herausbekommen, bei mir lautet er: 
"/usr/local/Cellar/zbar/0.10_10/bin/zbarimg".  Wenn ich also den Pfad 
mit aufrufe, funktioniert es ...

Bitte melde dich an um einen Beitrag zu schreiben. Anmeldung ist kostenlos und dauert nur eine Minute.
Bestehender Account
Schon ein Account bei Google/GoogleMail? Keine Anmeldung erforderlich!
Mit Google-Account einloggen
Noch kein Account? Hier anmelden.