Differenze tra le versioni di "Cambiare in esecuzione la directory di lavoro di un processo Gambas con la funzione esterna chdir()"
Da Gambas-it.org - Wikipedia.
Riga 17: | Riga 17: | ||
− | + | Public Sub Main() | |
Dim i As Integer | Dim i As Integer | ||
Riga 30: | Riga 30: | ||
Print "Nuova corrente directory di lavoro: "; s | Print "Nuova corrente directory di lavoro: "; s | ||
− | + | End | |
Versione attuale delle 17:35, 8 giu 2024
Per cambiare in esecuzione la corrente directory di lavoro del processo di un'applicazione Gambas, è possibile utilizzare la funzione esterna "chdir()", dichiarata nel file header: /usr/include/unistd.h .
Questa funzione esterna produce effetti solo sulla directory di lavoro del processo corrente.
E' necessario richiamare in Gambas la libreria condivisa: "libc.so.6 ".
Mostriamo un semplice esempio:
Library "libc:6" ' int chdir (const char *__path) ' Change the process's working directory to PATH. Private Extern chdir(__path As String) As Integer ' char *get_current_dir_name (void) ' Return a malloc'd string containing the current directory name. Private Extern get_current_dir_name() As String Public Sub Main() Dim i As Integer Dim s As String ' Imposta la nuova directory di lavoro corrente: i = chdir("/tmp") If i < 0 Then Error.Raise("Impossibile cambiare la directory di lavoro !") ' Effettua la verifica: s = get_current_dir_name() Print "Nuova corrente directory di lavoro: "; s End