System ()
Da Gambas-it.org - Wikipedia.
Versione del 16 giu 2024 alle 15:09 di Vuott (Discussione | contributi)
La funzione
int system(const char *__command);
passa il nome del comando o del programma che deve essere eseguito.
Volendola utilizzare in Gambas, bisognerà dichiararla con Extern, nonché dichiarare la libreria di C: libc.so.6, nella quale la funzione è contenuta. Da sottolineare che, poiché questa funzione esterna di C "system" è omonima alla funzione di Gambas "System", bisognerà assegnarle un nome a piacere, ma si dovrà anche richiamare il suo vero nome con il comando Exec.
Dunque avremo ad esempio:
Private Extern system_C(__command As String) As Integer In "libc:6" Exec "system"
Semplice esempio di uso in Gambas:
' 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() ' Viene lanciato il programma editor di testo "Gedit": system_C("gedit") End
Lo stesso esempio precedente, ma anche aprendo un file di testo:
' 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() ' Apre il file di testo con il programma "gedit": system_C("gedit /percorso/del/file/di/testo") End
Altro esempio:
' 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() ' Mostra quanto contenuto dalla cartella "/tmp": system_C("ls /tmp") End
Altro esempio con un file audio:
' 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() ' Apre ed esegue il file audio con il programma "vlc": system_C("vlc /percorso/del/file/audio") End
In quest'altro esempio si colora di rosso il testo scritto in console/Terminale:
' 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() ' Si imposta il colore (da 0 a 7): system_C("tput setaf 1") Print "Testo qualsiasi" End