Differenze tra le versioni di "Lanciare da un'applicazione Gambas il Terminale e far partire da esso un programma"
(Creata pagina con "Se si intende lanciare da un'applicazione Gambas il Terminale e far partire da esso un qualsiasi programma, è possibile utilizzare alcune analoghe modalità. ==Uso di Shell...") |
|||
Riga 21: | Riga 21: | ||
==Uso della funzione esterna ''execv( )''== | ==Uso della funzione esterna ''execv( )''== | ||
Mostriamo un esempio di apertura del Terminale ''gnome-terminal'' mediante la funzione esterna ''execv( )'', dichiarata nel file header "''/usr/include/unistd.h''": | Mostriamo un esempio di apertura del Terminale ''gnome-terminal'' mediante la funzione esterna ''execv( )'', dichiarata nel file header "''/usr/include/unistd.h''": | ||
− | + | <FONT color=Gray>' ''int execv (const char *__path, char *const __argv[])'' | |
' ''Execute PATH with arguments ARGV and environment from `environ'.''</font> | ' ''Execute PATH with arguments ARGV and environment from `environ'.''</font> | ||
Private Extern execv(path As String, argv As String[]) as Integer In "libc:6" | Private Extern execv(path As String, argv As String[]) as Integer In "libc:6" | ||
Riga 60: | Riga 60: | ||
Di seguito il medesimo esempio, ma utilizzando l'emulatore di Terminale ''xterm'': | Di seguito il medesimo esempio, ma utilizzando l'emulatore di Terminale ''xterm'': | ||
− | + | <FONT color=Gray>' ''int system(const char *__command)'' | |
' ''Execute the given line as a shell command.''</font> | ' ''Execute the given line as a shell command.''</font> | ||
Private Extern system_C(__command As String) As Integer In "libc:6" Exec "system" | Private Extern system_C(__command As String) As Integer In "libc:6" Exec "system" |
Versione delle 16:50, 24 ago 2016
Se si intende lanciare da un'applicazione Gambas il Terminale e far partire da esso un qualsiasi programma, è possibile utilizzare alcune analoghe modalità.
Uso di Shell
Mostriamo un esempio di apertura del Terminale gnome-terminal mediante Shel, e da lì avvio del programma vlc per l'esecuzione di un file audio:
Public Sub Main() Shell System.Find("gnome-terminal") & " -x " & System.Find("vlc") & " /percorso/file/audio" End
Lo stesso codice, ma ora usando il terminale xterm:
Public Sub Main() Shell System.Find("xterm") & " -e " & System.Find("vlc") & " /percorso/file/audio" End
Uso della funzione esterna execv( )
Mostriamo un esempio di apertura del Terminale gnome-terminal mediante la funzione esterna execv( ), dichiarata nel file header "/usr/include/unistd.h":
' int execv (const char *__path, char *const __argv[]) ' Execute PATH with arguments ARGV and environment from `environ'. Private Extern execv(path As String, argv As String[]) as Integer In "libc:6" Public Sub Main() execv(System.Find("gnome-terminal"), [" ", "-x", System.Find("vlc"), "/percorso/file/audio"]) End
Di seguito il medesimo esempio, ma utilizzando l'emulatore di Terminale xterm:
' int execv (const char *__path, char *const __argv[]) ' Execute PATH with arguments ARGV and environment from `environ'. Private Extern execv(path As String, argv As String[]) as Integer In "libc:6" Public Sub Main() execv(System.Find("xterm"), [" ", "-e", System.Find("vlc"), "/percorso/file/audio"]) End
Uso della funzione esterna system( )
Mostriamo un esempio di apertura del Terminale gnome-terminal mediante la funzione esterna execv( ), dichiarata nel file header "/usr/include/stdlib.h":
' int system(const char *__command) ' Execute the given line as a shell command. Private Extern system_C(__command As String) As Integer In "libc:6" Exec "system" Public Sub Main() system_C(System.Find("gnome-terminal") & " -x " & System.Find("vlc") & "/percorso/file/audio") End
Di seguito il medesimo esempio, ma utilizzando l'emulatore di Terminale xterm:
' int system(const char *__command) ' Execute the given line as a shell command. Private Extern system_C(__command As String) As Integer In "libc:6" Exec "system" Public Sub Main() system_C(System.Find("xterm") & " -e " & System.Find("vlc") & "/percorso/file/audio") End