
Lavorando ad un progettino avevo pensato alla possibilità di conoscere l'indirizzo IP dell'utente. Questo può essere utile quando si ha la necessità di conoscere l'indirizzo con cui ci si affaccia alla rete magari per comunicare con altri computer. Gambas, che io sappia, non ha librerie o funzioni particolari che permettano di svolgere tale compito e pertanto ci si deve affidare ad un semplice comando esterno che verrà intercettato e mostrato a schermo.
Il nostro lavoro verrà svolto da una riga di comando:
wget http://checkip.dyndns.org/ -q -O - |grep -Eo '\<[[:digit:]]{1,3}(\.[[:digit:]]{1,3}){3}\>'
Esso non fa altro che rivolgersi al servizio http://checkip.dyndns.org/ (che altri non è che una riga di testo del tipo)
Current IP Address: 93.xxx.xxx.xx
e ne preleva solo le cifre, ovvero l'indirizzo IP. In questo modo ci verrà restituito il nostro indirizzo.
La funzione Gambas che ci restituirà l'IP sarà:
Come si vede la funzione è semplice. Essa dichiara una variabile di nome result di tipo stringa che conterrà l'output del comando. La riga successiva è l'esecuzione del comando visto prima con relativo redirect sulla variabile appena dichiarata. Ottenuto l'IP lo restituiamo con RETURN.