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 FunctionJa 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.