Differenze tra le versioni di "Ottenere la lista di tutte le variabili d'ambiente nel proprio sistema mediante le risorse del API di GLIB-2.0"
Da Gambas-it.org - Wikipedia.
(Creata pagina con "La funzione esterna ''g_get_environ( )'' del API di GLIB-2.0 consente di ottenere una lista di tutte le [https://it.wikipedia.org/wiki/Variabile_d%27ambiente variabili d'ambi...") |
|||
(11 versioni intermedie di uno stesso utente non sono mostrate) | |||
Riga 1: | Riga 1: | ||
− | La funzione esterna | + | La funzione esterna "g_get_environ()" del API di GLIB-2.0 consente di ottenere una lista di tutte le [https://it.wikipedia.org/wiki/Variabile_d%27ambiente variabili d'ambiente] nel nostro sistema. |
− | |||
− | |||
+ | E' necessario avere installata e richiamare in Gambas la libreria condivisa: "''libglib-2.0.so.0.8000.5'' ". | ||
Mostriamo un semplice esempio: | Mostriamo un semplice esempio: | ||
− | Library "libglib-2.0" | + | Library "libglib-2.0:0.8000.5" |
<FONT Color=gray>' ''gchar ** g_get_environ (void)'' | <FONT Color=gray>' ''gchar ** g_get_environ (void)'' | ||
Riga 16: | Riga 15: | ||
− | + | Public Sub Main() | |
Dim en As Pointer | Dim en As Pointer | ||
Riga 22: | Riga 21: | ||
Dim s As String | Dim s As String | ||
− | + | en = g_get_environ() | |
− | + | If en == 0 Then Error.Raise("Errore !") | |
− | + | ||
− | + | Repeat | |
− | + | s = String@(Pointer@(en + i)) | |
− | + | Print s | |
− | + | i += SizeOf(gb.Pointer) | |
− | + | Until s == Null | |
− | + | ||
− | + | g_strfreev(en) | |
− | + | ||
+ | End | ||
+ | |||
+ | |||
+ | |||
+ | =Riferimenti= | ||
+ | * https://docs.gtk.org/glib/func.get_environ.html |
Versione attuale delle 14:48, 1 ott 2024
La funzione esterna "g_get_environ()" del API di GLIB-2.0 consente di ottenere una lista di tutte le variabili d'ambiente nel nostro sistema.
E' necessario avere installata e richiamare in Gambas la libreria condivisa: "libglib-2.0.so.0.8000.5 ".
Mostriamo un semplice esempio:
Library "libglib-2.0:0.8000.5" ' gchar ** g_get_environ (void) ' Gets the list of environment variables for the current process. Private Extern g_get_environ() As Pointer ' void g_strfreev (gchar **str_array) ' Frees a NULL-terminated array of strings. Private Extern g_strfreev(str_array As Pointer) Public Sub Main() Dim en As Pointer Dim i As Integer Dim s As String en = g_get_environ() If en == 0 Then Error.Raise("Errore !") Repeat s = String@(Pointer@(en + i)) Print s i += SizeOf(gb.Pointer) Until s == Null g_strfreev(en) End