Jee, mun eka koodivinkki, toivottavasti tulee tarpeeseen :)
Elikkäs tämä koodivinkki hakee www.whatismyhost.com:ista julkisen IP -Osoitteen. Siinä toimii periaatteena Temen Tiedoston lataaminen netistä -Visual Basic (en nyt keksi kuinka tuohon saa linkin sinne...) koodivinkki. Lisää formille yksi textbox nimellä Text1
Eli kiitokset Temelle :)
Tämä osuus on siis se Temen vinkki
Option Explicit Private Declare Function URLDownloadToFile Lib "urlmon" _ Alias "URLDownloadToFileA" _ (ByVal pCaller As Long, _ ByVal szURL As String, _ ByVal szFileName As String, _ ByVal dwReserved As Long, _ ByVal lpfnCB As Long) As Long Private Const ERROR_SUCCESS As Long = 0 Public Sub Lataa() Dim sSourceUrl As String Dim sLocalFile As String Dim targetFile As String Dim hfile As Long sSourceUrl = "http://www.whatismyhost.com" 'ladataan www.whatismyhost.com:ista ip ja muu sälä sLocalFile = App.Path & "\ip.txt" 'ip.txt tiedostoon If DownloadFile(sSourceUrl, sLocalFile) Then hfile = FreeFile Open sLocalFile For Input As #hfile Close #hfile End If End Sub 'Ja tämä on se funktio, joka suorittaa lataamisen. Public Function DownloadFile(sSourceUrl As String, _ sLocalFile As String) As Boolean Dim lngRetVal As Long 'if the API returns ERROR_SUCCESS (0), 'return True from the function DownloadFile = URLDownloadToFile(0&, _ sSourceUrl, _ sLocalFile, _ 0&, _ 0&) = ERROR_SUCCESS End Function
Ja tässä astun minä kuvaan :P
Private Sub Form_Load() Lataa 'Ladataan whatismyhost.comista IP osoite Dim IP Open App.Path & "\ip.txt" For Input As #1 'Avataan äsken ladattu tiedosto Line Input #1, IP 'Syötetään tiedoston ylimmänrivin teksti IP muuttujaan Close 'suljetaan tiedosto Kill App.Path & "\ip.txt" 'poistetaan ladattu tiedosto koska se on jo muuttujassa Text1.Text = IP 'Vaihetaan Text1:hden teksti IP muuttujaan IP = "" 'tyhjennetään IP muuttuja ettei vie muutamia kilotavuja kallista muistia :P Text1.Text = Right$(Text1.Text, Len(Text1.Text) - 68) 'Poistetaan alusta tekstiä riittävästi Text1.Text = Left$(Text1.Text, Len(Text1.Text) - 16) 'ja lopusta poistetaan End Sub
Huono puoli tässä on, että jos whatismyhostin designi tai yksikin kirjain muuttuu, koodi ei anna oikeaa ip:tä.
Nojoo, annoin muutamalle kaverille testattavaksi, mutta ilmeisesti he katsoivat niin hätäiseen etteivät he huomannut sen on olevan oikea IP osoite, no siin on vaikka perus idea jos joku parempi haluu säätään sen paremmaksi
Aihe on jo aika vanha, joten et voi enää vastata siihen.