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 ''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.
+
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 dinamica condivisa: "''libglib-2.0''"
 
  
 +
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()
+
  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()
+
  en = g_get_environ()
 
+
  If en == 0 Then Error.Raise("Errore !")
  Repeat
+
    s = String@(Pointer@(en + i))
+
  Repeat
    Print s
+
    s = String@(Pointer@(en + i))
    i += SizeOf(gb.Pointer)
+
    Print s
  Until s == Null
+
    i += SizeOf(gb.Pointer)
 
+
  Until s == Null
  g_strfreev(en)
+
 
+
  g_strfreev(en)
  '''End'''
+
 
 +
  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


Riferimenti