app from terminal or gui? [SOLVED]

Post

Posted
Rating:
#1 (In Topic #692)
Guru
BruceSteers is in the usergroup ‘Guru’
Does anyone know if there is a sure fire way of telling if an app has been launched via terminal or gui?

basically i ned to provide shell output to the user and the app could be launched from terminal or desktop drag n drop (or other methods that may not have a terminal)

So my plan is to output to stdout if launched via a terminal or open a form with a terminalview if not.

But how to tell the difference?

Cheers in advance for any advice.
:)
Online now: No Back to the top

Post

Posted
Rating:
#2
Avatar
Enthusiast
PJBlack is in the usergroup ‘Enthusiast’
MAYBE something like so:

Code (gambas)

  1.     Try Debug Me.h
  2.  
  3.     If Not Error Then Debug "GUI Programm ..." Else Debug "Konsolenprogramm ..."
  4.  
Online now: No Back to the top

Post

Posted
Rating:
#3
Guru
BruceSteers is in the usergroup ‘Guru’

PJBlack said

MAYBE something like so:

Code (gambas)

  1.     Try Debug Me.h
  2.  
  3.     If Not Error Then Debug "GUI Programm ..." Else Debug "Konsolenprogramm ..."
  4.  

Cheers, but alas that's no good.
The application starts from a startup class not a form so none of the usual Me. things exist.

also if no args it loads it's gui otherwise it runs the shell command so it usually will not have a gui window open.
Online now: No Back to the top

Post

Posted
Rating:
#4
Guru
BruceSteers is in the usergroup ‘Guru’
Many Thanks to Tobias Boege on the Gambas m/l for this reply…

If anyone else want's the answer to the question…..
File.In.IsTerm is true if and only if the standard input of your program
is connected to a (pseudo) terminal. This will be the case when you launch
the program in a terminal emulator. It will also be the case if you launch
it in the IDE (because it is connected to the TerminalView in the IDE).
It will be false if you launch it via double click from your desktop.
Online now: No Back to the top
1 guest and 0 members have just viewed this.