Error en File manager remoto

Iniciado por demoniox12, 11 Noviembre 2007, 20:26 PM

0 Miembros y 1 Visitante están viendo este tema.

demoniox12

wenas.. he estado intentando hacer un file manager que encontre x aca en el foro y esta tal cual el code.. y veo que esta todo bien.. pero la lista de discos me la envia mal les dejo el code:

Servidor:
Private Declare Sub Sleep Lib "kernel32" (ByVal dwMilliseconds As Long)

Private Sub Form_Load()
WS.LocalPort = 854
WS.Listen
End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
WS.GetData datos
Text1.Text = datos
If Mid(datos, 1, 6) = "\rutad" Then Call rutad(Mid(datos, 7))
End Sub

Public Function rutad(ruta As String)
On Error GoTo Error
Dim i

If ruta = "" Then
For i = 0 To Drive1.ListCount - 1
WS.SendData "\list" & Drive1.List(i) & "\"
Call Sleep(300)
Next
Else
Dir1.Path = ruta
For i = 0 To Dir1.ListCount - 1
WS.SendData "\list" & Dir1.List(i)
Call Sleep(300)
Next
File1.Path = ruta
For i = 0 To File1.ListCount - 1
If Right(ruta, 1) = "\" Then
WS.SendData "\list" & File1.Path & File1.List(i)
Else
WS.SendData "\list" & File1.Path & "\" & File1.List(i)
End If
Call Sleep(300)
Next
End If

Exit Function
Error:
End Function

Private Sub WS_ConnectionRequest(ByVal requestID As Long)
WS.Close
WS.Accept requestID
End Sub




Cliente:
Private Sub Command1_Click()
WS.SendData Text1.Text
End Sub

Private Sub Form_Load()
Servidor.Visible = True
End Sub

Private Sub List1_Click()
WS.SendData "\rutad" & List1.Text
End Sub

Private Sub Timer1_Timer()
WS.Connect WS.LocalIP, 854

Timer1.Enabled = False
End Sub

Private Sub ws_DataArrival(ByVal bytesTotal As Long)
Dim datos As String
WS.GetData datos
If Mid(datos, 1, 5) = "\list" Then
List1.AddItem (Mid(datos, 6))
End If
End Sub


(los hice a los 2 en un mismo proyecto x eso hay algunas cosas demas)

Sino aca les dejo el link: http://www.lechi.com.ar/Filemanager.rar

aver si pueden ver que esta mal y ayudarme...

PD: concretamente me devuelve en el listbox: a:\\listc:\\listd:\\liste:\\listf:\\listg:\
yo creo que lo que anda mal es el sleep de sierta forma..


salu2!
y desde ya gracias!
By Demoniox

~~


demoniox12

By Demoniox

demoniox12

Cita de: E0N en 11 Noviembre 2007, 20:58 PM
Prueva con este que si q funciona bien ;)
http://foro.elhacker.net/index.php/topic,170051.0.html


lo estuve testeando y hay 1 error y 1 cosa fea que nose como solucionarlo.. :P

1ero.. para navegar x las carpetas tenes que hacer 1 click y despues otro click... distanciado.. no se puede hacer doble click directamente..

y 2do.. ejecuto el cliente.. el servidor... todo OK... abro el file manager en el cliente.. todo OK.. cierro la ventanita del file manager.. la vuelvo a abrir y no aparecen los archivos.. pero si las carpetas..

bueno desde ya gracias..
salu2!!
By Demoniox

~~

Citar1ero.. para navegar x las carpetas tenes que hacer 1 click y despues otro click... distanciado.. no se puede hacer doble click directamente..

Cambia el evento

Citar2do.. ejecuto el cliente.. el servidor... todo OK... abro el file manager en el cliente.. todo OK.. cierro la ventanita del file manager.. la vuelvo a abrir y no aparecen los archivos.. pero si las carpetas..

Hice ese code hace un monton, ya ni me acuerdo xD miralo con calma a ver q es lo q te falla, tampoco es para q lo copies tal cual, intenta adaptarlo a tu proyecto y a tu forma de programar ;)

demoniox12

Cita de: E0N en 12 Noviembre 2007, 11:09 AM
Citar1ero.. para navegar x las carpetas tenes que hacer 1 click y despues otro click... distanciado.. no se puede hacer doble click directamente..

Cambia el evento

Citar2do.. ejecuto el cliente.. el servidor... todo OK... abro el file manager en el cliente.. todo OK.. cierro la ventanita del file manager.. la vuelvo a abrir y no aparecen los archivos.. pero si las carpetas..

Hice ese code hace un monton, ya ni me acuerdo xD miralo con calma a ver q es lo q te falla, tampoco es para q lo copies tal cual, intenta adaptarlo a tu proyecto y a tu forma de programar ;)

Wenas denuevo y gracias x tu respuesta :), ya pude solucionar lo del click.. le sake un if y le cambie un valor y ya.. :) pero lo 2do.. lo de volver a abrir el file manager hay algo muy raro..

archivo = Split(Archivos, "<")

For a = 0 To UBound(archivo)
Dim ParteArch As Variant
ParteArch = Split(archivo(a), "*")
   frmArchivos.lvArchivos.ListItems.Add(, , ParteArch(0), , IconoArchivo(Right(ParteArch(0), 3))).SubItems(1) = ParteArch(1) & " bytes"
Next a

ese codigo es el que falla concretamente el de agregar los items.. nose porke la primera vez anda.. pero la 2da vez no.. probe de ver los datos si los volvia a enviar poniendolo en un textbox y si lo envia a la listview.. pero nose porke no lo vuelve a agregar..

salu2!
By Demoniox