Vamos a ver, buscando y buscando como hacer un file manager con mis pocos conocimientos de vb, al final lo hice como pone en el manual de Xenon, la explicacion de Scugat creo qe es.
Al cargar un formulario, aparecen las particiones de la maqina remota en un listbox directamente y luego al hacre doble click deberia ir explorando el disco, pero siempre qe hago doble click en alguna particion, o en a: sin diskette,o en el lector de cds sin cd me sale lo mismo, la lista de archivos de la ruta donde se ejecuta el server (filelistbox). Bueno, pues aqi os dejo los codigos por si alguien me puede ayudar:
Server:
Cliente:
Bueno, pues a ver si encontrais el error, porqe yo ya me estoi volviendo loco
Muchiiiiiisimas gracias a todos, me estais ayudando un puñao, en serio, gracias
Al cargar un formulario, aparecen las particiones de la maqina remota en un listbox directamente y luego al hacre doble click deberia ir explorando el disco, pero siempre qe hago doble click en alguna particion, o en a: sin diskette,o en el lector de cds sin cd me sale lo mismo, la lista de archivos de la ruta donde se ejecuta el server (filelistbox). Bueno, pues aqi os dejo los codigos por si alguien me puede ayudar:
Server:
Código [Seleccionar]
dim datos as integer
Private Sub WS_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
ws.GetData datos
If Left(datos, 6) = "\rutad" Then Call rutad(Mid(datos, 7))
End Sub
'Me parece qe esto no es necesario, pero ya no se qe probar
Private Sub Dir1_Change()
On Error Resume Next
File1.path = Dir1.path
End Sub
Private Sub Drive1_Change()
On Error Resume Next
Dir1.path = Drive1.Drive
End Sub
Public Function rutad(ruta As String)
On Error Resume Next
If ruta = "" Then 'Si enviamos "" vemos particiones
Dim i As Integer
For i = 0 To Drive1.ListCount - 1
ws.SendData "\list" & Drive1.List(i) & "\" 'enviamos "\list" y la ruta de todos los drive
Call Sleep(250) 'La funcion de sleep funciona perfectamente (Por si ay dudas)
Next
Else
Dir1.path = ruta
For i = 0 To Dir1.ListCount - 1
'=
ws.SendData "\list" & Form1.Dir1.List(i) & "\"
Call Sleep(250)
Next
File1.path = ruta
For i = 0 To File1.ListCount - 1
ws.SendData "\list" & File1.path & File1.List(i)
Call Sleep(250)
Next
End If
Exit Function
End Function
Cliente:
Código [Seleccionar]
Private Sub form_load()
ws.SendData "\rutad" & ""
End Sub
Private Sub List1_DblClick()
If FormTrans.List1.Text = ".." Then 'Vuelve a las particiones
ws.SendData "\rutad" & ""
List1.Clear
Else
FormTrans.MnuMngrVer_click
End If
End Sub
Public Sub MnuMngrVer_click()
ws.SendData "\rutad" & List1.Text
Text1.Text = List1.Text
List1.Clear
List1.AddItem ".."
End Sub
Private Sub WS_DataArrival(ByVal bytesTotal As Long)
On Error Resume Next
Dim datos As String
ws.GetData datos
If Mid(datos, 1, 5) = "\list" Then List1.AddItem (Mid(datos, 6))
End Sub
Bueno, pues a ver si encontrais el error, porqe yo ya me estoi volviendo loco
Muchiiiiiisimas gracias a todos, me estais ayudando un puñao, en serio, gracias