Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 15

Discussione: [VB6] Catturare IP

  1. #1
    Utente di HTML.it L'avatar di percky
    Registrato dal
    May 2001
    Messaggi
    118

    [VB6] Catturare IP

    Salve a tutti, sto modificando un programmino in VB e mi servirebbe catturare l'IP della macchina su cui gira il programma scriverlo in una variabile ed inviarlo via ftp ad un'altra macchina.
    Per la connessione FTP me la son cavata, ora però non riesco a trovare il comando (se esiste in VB6) per catturare l'indirizzo IP della macchina, naturalmente quello assegnato dal provider alla connessione ad internet e non quello locale.
    Qualcuno può aiutarmi? grazie in anticipo.

    xKy
    Think ahead, think linux!

  2. #2
    Per parlare di VB c'è l'apposita sezione (SUBFORUM)
    Sposto là.
    ...Terrible warlords, good warlords, and an english song

  3. #3
    Inserisci il componente Microsoft WinSock 6.0.

    codice:
    Winsock1.RemoteHostIP

  4. #4
    Utente di HTML.it L'avatar di percky
    Registrato dal
    May 2001
    Messaggi
    118
    Scusate, non avevo visto la sezione VB

    Microsoft WinSock 6.0 è integrato in VB6sp5 oppure devo scaricarlo a parte?
    Grazie
    Think ahead, think linux!

  5. #5
    VB6 dovrebbe già averlo se nn mi sbaglio

  6. #6
    Utente di HTML.it L'avatar di percky
    Registrato dal
    May 2001
    Messaggi
    118
    ok grazie... l'ho trovato
    Think ahead, think linux!

  7. #7
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    14

    una cortesia...

    Originariamente inviato da percky
    ok grazie... l'ho trovato
    Senti, ti posso chiedere una cortesia?
    Ho letto che per quanto riguarda FTP te la sei cavata.
    Posso chiederti come hai fatto?
    Io devo inviare un file via FTP tramite programmino scritto in VB6!
    Ti ringrazio..

  8. #8
    Utente di HTML.it L'avatar di percky
    Registrato dal
    May 2001
    Messaggi
    118
    si, a dir la verità ho trovato un progetto in rete che ho adattato alla meglio, io purtroppo non programmo correntemente in VB ma mi è servito in questo caso per creare un file exe che facesse queste operazioni.
    Se vuoi ti invio il file o ti posto il codice.

    Per quanto riguarda il Winsock, ho inserito l'oggetto nel form ed ho inserito l'istruzione Winsock1.RemoteHostIP dopo aver effettuato la connessione ma il valore restituito in debug è vuoto, non cattura l'ip
    Think ahead, think linux!

  9. #9
    Utente di HTML.it
    Registrato dal
    Jul 2003
    Messaggi
    14

    Grazie..

    Magari!
    Se mi posti il codice, ti ringrazio infinitamente.

    Gentilissimo!
    A risentirci!
    CIAO!

  10. #10
    Utente di HTML.it L'avatar di percky
    Registrato dal
    May 2001
    Messaggi
    118
    il codice è troppo lungo non riesco a postarlo se mi dai un'indirizzo te lo invio

    in ogni caso questo fa riferimento alla connessione:
    Private Sub Form_Load()
    Dim AppoDimensioneFile As String
    Dim PercorsoSuSito As String
    Dim Riuscito As Boolean
    bActiveSession = False
    hOpen = 0
    hConnection = 0
    chkPassive.Value = 1
    optBin.Value = 1
    dwType = FTP_TRANSFER_TYPE_BINARY
    Dim imgI As ListImage
    ' Set imgI = ImageList1.ListImages.Add(, "open", LoadPicture("open.bmp"))
    ' Set imgI = ImageList1.ListImages.Add(, "closed", LoadPicture("closed.bmp"))
    ' Set imgI = ImageList1.ListImages.Add(, "leaf", LoadPicture("leaf.bmp"))
    ' Set imgI = ImageList1.ListImages.Add(, "root", LoadPicture("root.bmp"))
    ' TreeView1.ImageList = ImageList1
    ' TreeView1.Style = tvwTreelinesPictureText
    EnableUI (False)
    cmdInternetOpen_Click
    DoEvents
    txtServer.Text = "ftp ferver"
    txtUser.Text = "user"
    txtPassword.Text = "password"
    DoEvents
    cmdConnect_Click
    PercorsoSuSito = "file1"
    AppoDimensioneFile = Str(FileLen(App.Path & "\key"))
    Upload App.Path & "\key", PercorsoSuSito, PercorsoSuSito, AppoDimensioneFile, Riuscito
    PercorsoSuSito = "file2"
    Upload App.Path & "\key", PercorsoSuSito, PercorsoSuSito, AppoDimensioneFile, Riuscito
    If Riuscito Then
    MsgBox "Autenticazione effettuata con successo", vbInformation, "Autenticazione"
    End If
    End
    End Sub

    E QUESTA E' LA FUNZIONE UPLOAD:
    Private Sub Upload(PercorsoFilesuDisco As String, NomeFile As String, PercorsoFilesuSito As String, DimensioneFile As String, Riuscito As Boolean)
    ''''''''''''''''InizioGestioneErrori''''''''

    Dim Cnt As Long, nFileLen As Long, nRet As Long, nTotFileLen As Long
    Dim sBuffer As String * 1024
    Dim ret As Long, SentBytes As Long, sAllBytes As Long, z As Long
    Dim i As Integer
    Dim Kam As String, Ode As String
    Dim Fs As Long, StartT As Long, t As Long, p As Long
    Dim spRate As Single
    Const sReadBuffer = 1024 'passo dimensione file

    z = DimensioneFile
    spRate = 0
    sAllBytes = 0
    Riuscito = True
    'formatto la label
    Fs = DimensioneFile
    'descr file

    'percorso file da scaricare
    Ode = PercorsoFilesuDisco
    'file da scaricare
    Kam = NomeFile
    'chiamata server
    DoEvents
    hFile = FtpOpenFile(hConnection, Kam, &H40000000, &H2, 0)
    DoEvents
    If hFile = 0 Then
    MsgBox "Errore di autenticazione. Ripetere l'operazione", vbCritical, "Autenticazione"
    Riuscito = False

    Exit Sub
    'MsgBox "Cant create requested file on server", vbExclamation, App.Title
    End If
    SentBytes = 0
    nFileLen = 0
    StartT = GetTickCount


    Open Ode For Binary As #1
    nTotFileLen = LOF(1)
    Do
    DoEvents
    Get #1, , sBuffer
    DoEvents
    If nFileLen < nTotFileLen - sReadBuffer Then
    If InternetWriteFile(hFile, sBuffer, sReadBuffer, nRet) = 0 Then
    MsgBox "Errore di autenticazione. Ripetere l'operazione", vbCritical, "Autenticazione"
    Riuscito = False

    Exit Do
    'End
    End If
    SentBytes = SentBytes + sReadBuffer
    sAllBytes = sAllBytes + sReadBuffer
    nFileLen = nFileLen + sReadBuffer
    Else
    If InternetWriteFile(hFile, sBuffer, nTotFileLen - nFileLen, nRet) = 0 Then
    MsgBox "Errore di autenticazione. Ripetere l'operazione", vbCritical, "Autenticazione"
    Riuscito = False
    Exit Do
    End If
    SentBytes = SentBytes + (nTotFileLen - nFileLen)
    sAllBytes = sAllBytes + (nTotFileLen - nFileLen)
    nFileLen = nTotFileLen
    End If
    ' DoEvents
    ' FInterner.lblByteInviati = Format(sAllBytes / 1024, "### ### ###.##") & " Kb"
    ' FInterner.lblByteInviati.Refresh
    ' FInterner.lblkbdaTrasferire = Format((z / 1000) - (sAllBytes / 1024), "### ### ###.##") & " Kb"
    ' FInterner.lblkbdaTrasferire.Refresh
    ' If SentBytes <> 0 Then
    ' t = GetTickCount - StartT
    ' If t <> 0 Then
    ' spRate = (spRate + ((SentBytes / 1000) / (t / 1000))) / 2
    ' FInterner.lblVelocita = Format(spRate, "#.##") & " Kbps"
    ' FInterner.lblVelocita.Refresh
    ' End If
    ' End If
    ' FInterner.Bar.Value = nFileLen
    DoEvents
    Loop Until nFileLen >= nTotFileLen
    DoEvents
    Close
    'p = t / 1000
    InternetCloseHandle hFile

    ''''''''''''''''InizioGestioneErrori fine''''''''
    EsciDaErrore:
    ''''''''''''''''fineGestioneErrori fine''''''''''
    End Sub
    Think ahead, think linux!

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.