Differenze tra le versioni di "System ()"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "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...") |
|||
(Una versione intermedia di uno stesso utente non è mostrata) | |||
Riga 3: | Riga 3: | ||
passa il nome del comando o del programma che deve essere eseguito. | 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 " | + | |
+ | 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()" è <SPAN style="text-decoration:underline">omonima</span> alla funzione di Gambas ''System'', bisognerà assegnarle un nome a piacere, ma si dovrà anche richiamare il suo vero nome con il comando ''Exec''. | ||
<BR>Dunque avremo ad esempio: | <BR>Dunque avremo ad esempio: | ||
Private <FONT color=#B22222>Extern system_C</font>(__command As String) As Integer In "<FONT color=#B22222>libc:6"</font> <FONT color=#B22222>'''Exec "system"'''</font> | Private <FONT color=#B22222>Extern system_C</font>(__command As String) As Integer In "<FONT color=#B22222>libc:6"</font> <FONT color=#B22222>'''Exec "system"'''</font> | ||
− | |||
− | |||
− | |||
Semplice esempio di uso in Gambas: | Semplice esempio di uso in Gambas: | ||
<FONT color=Gray>' ''int system(const char *__command)'' | <FONT color=Gray>' ''int system(const char *__command)'' | ||
Riga 15: | Riga 13: | ||
− | + | Public Sub Main() | |
<FONT Color=gray>' ''Viene lanciato il programma editor di testo "Gedit":''</font> | <FONT Color=gray>' ''Viene lanciato il programma editor di testo "Gedit":''</font> | ||
<FONT color=#B22222>system_C("gedit")</font> | <FONT color=#B22222>system_C("gedit")</font> | ||
− | + | ||
− | + | End | |
Riga 29: | Riga 27: | ||
− | + | Public Sub Main() | |
<FONT Color=gray>' ''Apre il file di testo con il programma "gedit":''</font> | <FONT Color=gray>' ''Apre il file di testo con il programma "gedit":''</font> | ||
<FONT color=#B22222>system_C("gedit <FONT Color=gray>''/percorso/del/file/di/testo''</font>")</font> | <FONT color=#B22222>system_C("gedit <FONT Color=gray>''/percorso/del/file/di/testo''</font>")</font> | ||
− | + | ||
− | + | End | |
− | |||
Riga 44: | Riga 41: | ||
− | + | Public Sub Main() | |
<FONT Color=gray>' ''Mostra quanto contenuto dalla cartella "/tmp":''</font> | <FONT Color=gray>' ''Mostra quanto contenuto dalla cartella "/tmp":''</font> | ||
<FONT color=#B22222>system_C("ls /tmp")</font> | <FONT color=#B22222>system_C("ls /tmp")</font> | ||
− | + | End | |
− | + | Altro esempio con un file audio: | |
− | Altro esempio con file audio: | ||
<FONT color=Gray>' ''int system(const char *__command)'' | <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> | ||
Riga 59: | Riga 55: | ||
− | + | Public Sub Main() | |
<FONT Color=gray>' ''Apre ed esegue il file audio con il programma "vlc":''</font> | <FONT Color=gray>' ''Apre ed esegue il file audio con il programma "vlc":''</font> | ||
<FONT color=#B22222>system_C("vlc <FONT Color=gray>''/percorso/del/file/audio''</font>")</font> | <FONT color=#B22222>system_C("vlc <FONT Color=gray>''/percorso/del/file/audio''</font>")</font> | ||
− | + | End | |
− | |||
Riga 74: | Riga 69: | ||
− | + | Public Sub Main() | |
<FONT Color=gray>' ''Si imposta il colore (da 0 a 7):''</font> | <FONT Color=gray>' ''Si imposta il colore (da 0 a 7):''</font> | ||
Riga 81: | Riga 76: | ||
Print "Testo qualsiasi" | Print "Testo qualsiasi" | ||
− | + | End |
Versione attuale delle 15:10, 16 giu 2024
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