Solo teneis que darle el nombre del archivo, imagen o lo ke kerais enviar y el index del socket por el que esta conectado el cliente, osea, el numero de la matriz de controles winsock, OK? bueno pos este es el codigo. 

Por cierto es algo lento para archivos grandes, por lo que estoy comprimiendo los archivos a enviar a traves de visual basic, ya he conseguido comprimirlos, antes de enviarlos, solo que da descomprimirlos en cliente.


Private Sub Enviar_Ftp(Index As Integer, Cabe As String, Linea As String)
Dim Pos As Long, kkk As String
If WFtp(Index).State = sckConnected Then
    kkk = Cabe + Chr(10) + Linea
    WFtp(Index).SendData kkk
    DoEvents
End If
End Sub
Private Sub SendFile(ByVal vsLocalName As String, Index As Integer)
    Dim hFile           As Integer
    Dim lReadBytes      As Long
    Dim iSendPercent    As Integer
    Dim sBuffer As String
    Const Buffersize    As Long = 1024    
    hFile = FreeFile: sBuffer = "": Tamaño_Arch = 0    
    Open vsLocalName For Binary Access Read As hFile    
    Do While Not EOF(hFile)
       If LOF(hFile) - Seek(hFile) < Buffersize Then
          lReadBytes = LOF(hFile) - Seek(hFile) + 1
       Else
          lReadBytes = Buffersize
       End If              
       DoEvents
       sBuffer = Input$(lReadBytes, hFile)
       Enviar_Ftp Index, "PLANO_SOLAR", sBuffer
       iSendPercent = (Seek(hFile) / LOF(hFile)) * 100                
       If iSendPercent > 100 Then
          iSendPercent = 100
       End If
       If lReadBytes < Buffersize Then
          Exit Do
       End If    
    Loop
    Close #hFile        
End Sub
