Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: kakinets en 24 Noviembre 2006, 15:27 PM

Título: Problemas con inet
Publicado por: kakinets en 24 Noviembre 2006, 15:27 PM
Como saber cuiando el contro inet ya termino de subir un archivo o al reves ya termino de bajar un archivo...

            Saludos
Título: Re: Problemas con inet
Publicado por: ubetor^^ en 24 Noviembre 2006, 22:38 PM
Creas un label cuyos caption tendrías que escribir justo después del la función del code de inet...

Ejem:

Private Sub Command1_Click()
Inet1.execute "sube arxivo a ftp"
label1.Caption = "Subido"
End Sub

Private Sub Command2_Click()
Inet1.execute "baja arxivo de ftp"
label1.Caption = "Bajado"
End Sub


Nosé si era eso lo que preguntabas...

salu2!
Título: Re: Problemas con inet
Publicado por: Mr.Chispa en 26 Noviembre 2006, 04:49 AM
me parece que no es lo que buscaba, voy a ver si encuentro algo y te digo
Título: Re: Problemas con inet
Publicado por: CeLaYa en 1 Diciembre 2006, 18:10 PM
mira este es parte de un código de una de mis aplicaciones creo que es lo que estabas buscando, el Inet usa el estado "icResponseCompleted" para saber como va la carga/descarga de un archivo




Private Sub Inet1_StateChanged(ByVal State As Integer)
    Dim vtData As Variant 'acá almacenamos los datos
    Dim prog As Double, filesize As Long, contenttype As String
   
    On Local Error GoTo linea1
    Select Case State
        Case icError ' 11
              ' En caso de error, devuelve ResponseCode y ResponseInfo.
            vtData = Inet1.ResponseCode & ":" & Inet1.ResponseInfo
        Case icResponseCompleted
            Dim bDone As Boolean: bDone = False
            Dim tempArray() As Byte ' Un array para grabar los datos en un archivo
            'Para saber el tamaño del fichero en bytes
            filesize = Inet1.GetHeader("Content-length")
            'Establecemos el Max del = a al tamaño del archivo
            ProgressBar1.Max = filesize
            contenttype = Inet1.GetHeader("Content-type")
            'Creamos y abrimos un nuevo archivo en modo binario
            Open App.Path & "\" & nArchivo For Binary Access Write As #1

            ' Leemos de a 1 Kbytes. El segundo parámetro indica  el tipo de fichero. Tipo texto o tipo Binario, en este caso _
            binario
            vtData = Inet1.GetChunk(1024, icByteArray)

            DoEvents
            'Si el tamaño del fichero es 0 ponemos bDone en True para que no entre en el bucle
            If Len(vtData) = 0 Then bDone = True

            Do While Not bDone
                'Almacenamos en un array el contenido del archivo
                tempArray = vtData
                'Escribimos el archivo en disco
                Put #1, , tempArray
                'Aumentamos la barra
                ProgressBar1.Value = ProgressBar1.Value + Len(vtData) * 2
                prog = (ProgressBar1.Value + Len(vtData) * 2) / 1000000
                lblDescarga.Caption = "Descargando: " & Format(prog, "0.00") & "MB de " & Format(filesize / 1000000, "0.00") & "MB"
                               
                ' Leemos de pedazos de a 1 kb (1024 bytes)
                vtData = Inet1.GetChunk(1024, icByteArray)
                DoEvents
                If Len(vtData) = 0 Then bDone = True
            Loop
            completo = bDone
            Close #1
            ProgressBar1.Value = 0
    End Select
    Exit Sub
linea1:
    MsgBox "Error al conectarse al servidor" & vbCrLf & vbCrLf & Err.Number & vbCrLf & Err.Description, vbInformation + vbOKOnly, App.EXEName
    completo = True
    On Local Error GoTo 0

End Sub