Standard-Terminal aufrufen

Standard-Terminal aufrufen

Beitragvon compmgmt » 11. Sep 2017, 18:01 Standard-Terminal aufrufen

Hi,

Ich habe eine Konsolenanwendung, die von einem GUI Programm aufgerufen wird. Problem: Wenn ich das CLI Programm direkt aufrufe, wird mir logischerweise kein Terminal angezeigt. Nun meine Frage: Gibt es eine Möglichkeit das Standard-Terminal aufzurufen oder zumindest den Pfad des Terminals auszulesen um es dann aufzurufen?
Der Prozesseinstiegspunkt "SignaturLaden" in Signatur.dll konnte nicht gefunden werden.
compmgmt
 
Beiträge: 312
Registriert: 25. Nov 2015, 17:06
Wohnort: in der Nähe von Stuttgart
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4 | 
CPU-Target: i386 + x86_64
Nach oben

Beitragvon Mathias » 11. Sep 2017, 19:08 Re: Standard-Terminal aufrufen

Dieser Code ruft fpc in einem Terminal auf.

Code: Alles auswählen
var
  s:String;
begin
  RunCommand('xterm', ['fpc'],s );
end

Hier hat es noch mehr: http://wiki.freepascal.org/Executing_External_Programs
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4250
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon m.fuchs » 11. Sep 2017, 21:01 Re: Standard-Terminal aufrufen

xterm muss nicht installiert sein. Auf einem aktuellen Linux Mint/MATE ist es standardmäßig nicht dabei.

AFAIK sollte der Aufruf von x-terminal-emulator immer das passende grafische Terminal starten. Kann das noch jemand bestätigen?
Software, Bibliotheken, Vorträge und mehr: https://www.ypa-software.de
m.fuchs
 
Beiträge: 1963
Registriert: 22. Sep 2006, 18:32
Wohnort: Berlin
OS, Lazarus, FPC: Winux (L 1.8.4, FPC 3.0.4) | 
CPU-Target: x86, x64, arm
Nach oben

Beitragvon Mathias » 11. Sep 2017, 21:04 Re: Standard-Terminal aufrufen

Auf einem aktuellen Linux Mint/MATE ist es standardmäßig nicht dabei.

Ich meinte, bei meinem Mint musste ich es nicht nachinstallieren. :roll:
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4250
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon compmgmt » 12. Sep 2017, 16:20 Re: Standard-Terminal aufrufen

m.fuchs hat geschrieben:AFAIK sollte der Aufruf von x-terminal-emulator immer das passende grafische Terminal starten. Kann das noch jemand bestätigen?
Geht leider nicht. Ich habe es jetzt einfach folgendermaßen gelöst: Bevor die CLI-Anwendung gestartet wird, wird der Benutzer mittels InputQuery dazu aufgefordert, den Pfad des Standard Terminals einzugeben. Dabei ist natürlich das zuletzt eingegebene schon als default drin.

Sollte dennoch jemand wissen, wie es gehen könnte, gerne schreiben :)
Der Prozesseinstiegspunkt "SignaturLaden" in Signatur.dll konnte nicht gefunden werden.
compmgmt
 
Beiträge: 312
Registriert: 25. Nov 2015, 17:06
Wohnort: in der Nähe von Stuttgart
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4 | 
CPU-Target: i386 + x86_64
Nach oben

Beitragvon Mathias » 12. Sep 2017, 16:49 Re: Standard-Terminal aufrufen

Für eine Konsole gäbe es noch eine sehr elegante Lösung, NetBeans betet sie direkt in die GUI-Anwendung, siehe Anhang.
Aber wie dies geht, weis ich leider auch nicht. :oops:
Du hast keine ausreichende Berechtigung, um die Dateianhänge dieses Beitrags anzusehen.
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4250
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon compmgmt » 13. Sep 2017, 14:40 Re: Standard-Terminal aufrufen

Mathias hat geschrieben:Für eine Konsole gäbe es noch eine sehr elegante Lösung, NetBeans betet sie direkt in die GUI-Anwendung, siehe Anhang.
Aber wie dies geht, weis ich leider auch nicht. :oops:

Wie es geht, weiß ich (in der Theorie). Aber sich extra dafür einen Terminal Emulator schreiben, ist schon eine größere Sache. Ich werde mich vorerst mit dem oben beschriebenen zufrieden geben. Wenn ich mal Zeit und Lust habe, schreibe ich mir einen (allerdings mit sehr geringer Funktionalität).
Der Prozesseinstiegspunkt "SignaturLaden" in Signatur.dll konnte nicht gefunden werden.
compmgmt
 
Beiträge: 312
Registriert: 25. Nov 2015, 17:06
Wohnort: in der Nähe von Stuttgart
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4 | 
CPU-Target: i386 + x86_64
Nach oben

Beitragvon Mathias » 13. Sep 2017, 15:47 Re: Standard-Terminal aufrufen

Wie es geht, weiß ich (in der Theorie). Aber sich extra dafür einen Terminal Emulator schreiben, ist schon eine größere Sache. I

Ich dachte zuerst, dies wäre etwas eingebetetes, aber bei genauerer Betrachtung sieht, dies wirklich so aus, das eine eigene Emulation geschrieben wurde. Bezieht sich auf NetBeans.

Dies wäre sicher mal eine interessante Sache, eine Emulation selbst zu schreiben. Ein serielles Terminal ist sicher keine Hexerei, das muss man nur ESC-Sequenzen auswerten. Nur wie sieht es bei einem Terminal wie XTerm aus oder bei Telnet ?
Mit Lazarus sehe ich gün
Mit Java und C/C++ sehe ich rot
Mathias
 
Beiträge: 4250
Registriert: 2. Jan 2014, 17:21
Wohnort: Schweiz
OS, Lazarus, FPC: Linux (die neusten Trunc) | 
CPU-Target: 64Bit
Nach oben

Beitragvon compmgmt » 13. Sep 2017, 19:11 Re: Standard-Terminal aufrufen

Mathias hat geschrieben:
Wie es geht, weiß ich (in der Theorie). Aber sich extra dafür einen Terminal Emulator schreiben, ist schon eine größere Sache. I

Ich dachte zuerst, dies wäre etwas eingebetetes, aber bei genauerer Betrachtung sieht, dies wirklich so aus, das eine eigene Emulation geschrieben wurde. Bezieht sich auf NetBeans.

Dies wäre sicher mal eine interessante Sache, eine Emulation selbst zu schreiben. Ein serielles Terminal ist sicher keine Hexerei, das muss man nur ESC-Sequenzen auswerten. Nur wie sieht es bei einem Terminal wie XTerm aus oder bei Telnet ?
An sich funktioniert so ein Terminal Emulator mit Streams. Und dank TProcess ist es auch recht einfach zumindest die Ausgabe anzuzeigen. Wie es mit der Eingabe funktioniert, hatte ich neulich erst im Wiki gelesen, hab es aber wieder vergessen :oops:
Der Prozesseinstiegspunkt "SignaturLaden" in Signatur.dll konnte nicht gefunden werden.
compmgmt
 
Beiträge: 312
Registriert: 25. Nov 2015, 17:06
Wohnort: in der Nähe von Stuttgart
OS, Lazarus, FPC: Win 10 Pro | Lazarus 1.8.2 | FPC 3.0.4 | 
CPU-Target: i386 + x86_64
Nach oben

• Themenende •

Zurück zu Linux



Wer ist online?

Mitglieder in diesem Forum: 0 Mitglieder und 2 Gäste

porpoises-institution
accuracy-worried