help! como puedo crear un explorador remoto..con vb6

Iniciado por cjz3ro, 14 Febrero 2010, 18:02 PM

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

cjz3ro

 :-(help! como puedo crear un explorador remoto..con vb6
estuve buscando..  algunas ideas... pero no logro hacerlo conectar.. :-(
si alguien sabe como hacerlo plizz  q me dee.. una idea..

agus0

Buscar en RecursosVisualBasic... Leandro A Hizo uno muy bueno, por que no lo miras asi te das una idea de como es...

cobein

Yo creo que el titulo y la pregunta estan mal. Me parece que en este caso seria, donde aprendo a usar sockets?.
http://www.advancevb.com.ar
Más Argentino que el morcipan
Aguante el Uvita tinto, Tigre, Ford y seba123neo
Karcrack es un capo.

cjz3ro

#3
ps mi problema... es q no logroohacer q me funcione el explorador.. si tienen algo parecidoo como  hacerlo porfavor deenme una idea...?? gracias :-\

por cierto sigo utilizanddo...MSWINSOCK.OXC  SOY NUEVO EN LO Q SON sockets!! PODRIAN EXPLICARME POR Q ES MEJOR EN CONEXIONQ EL WINSOCK... :-\ :-\ :-\

xmbeat92

El hombre encuentra a Dios detrás de cada puerta que la ciencia logra abrir. -Einstein

cjz3ro

#5
tengo este codigo porfavor si alguie  sabe como crear un explorador remoto q me diga cual es mi error por q amii no me funca... :-[ :-[ :-[


Cliente:

1 Winsock: Winsock1
2 TextBox: txtIp , txtRuta
5 Botones: cmdConectar,cmdDesconectar,cmdMostrar,cmdMostrarAr chivos,cmdAtras
2 Listbox: lstDirectorios,lstArchivos
4 Labels: lblInformacion,lblDirectorioRemoto,lblArchivos,lbl Directorios


En General, comenzamos declarando unas variables:
Código:
Dim Ruta As String 'Aca se almacenarà la Ruta
Dim Donde As String 'Esta la usaremos para identificar donde mandar la data recibida
Dim Atras As String 'Esta la usaremos para poder retroceder a una ruta anterior
cmdConectar:
Código:
Private Sub cmdConectar_Click()

Winsock1.Connect txtIp.Text, "8080" 'Especificado el IP en txtIp, me conecto ( p: 1001 )
cmdConectar.Enabled = False 'Desabilitamos el boton cmdConectar
cmdDesconectar.Enabled = True 'Habilitamos el boton cdmDesconectar

End Sub

cmdDesconectar:
Código:
Private Sub cmdDesconectar_Click()

Winsock1.Close ' Cerramos el Winsock
cmdConectar.Enabled = True 'Habilitamos cmdConectar
cmdDesconectar.Enabled = False 'Desabilitamos cmdDesconectar
frmCliente.Caption = "Explorador Remoto - [Desconectado]" ' Cambiamos el caption

End Sub
Evento Connect de Winsock1:
Código:
Private Sub Winsock1_Connect()

lblInformacion.Caption = "Ubicaciòn en " & txtIp & " :" 'Caption que informa a donde estamos conectados
frmCliente.Caption = "Explorador Remoto - [Conectado]" 'El Caption del form informa si estamos conectados o no

End Sub
Evento Error de Winsock1:
Código:
Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)

Winsock1.Close

End Sub
cmdMostrar:
Código:
Private Sub cmdMostrar_Click()

Ruta = txtRuta.Text 'En la variable ruta, decimos en que directorio nos queremos situar
X = Ruta 'Asignamos el valor de Ruta a X , por medio de ella ira la data de cliente a server
Winsock1.SendData X ' Enviamos X
Donde = "Directorios" ' Le especificamos donde ira a para la data recibida ( a que List )
lstDirectorios.Clear ' Limpiamos lstDirectorios, para recibir data nueva
Atras = Ruta ' Asignamos el valor de la posicion actual a la variable Atras
lblDirRemoto.Caption = Ruta ' Le damos el valor de la ruta actual a lblDirRemoto

End Sub
cmdMostrarArchivos:
Código:
Private Sub cmdMostrarArchivos_Click()

X = "Mostrar Archivos" ' Pedimos al servidor, lso archivos de la ruta en la que estamos
Winsock1.SendData X ' Enviamos la data, por medio de X
Donde = "Archivos" ' Le decimos donde volcar la data
lstArchivos.Clear ' Limpiamos lstArchivos, para recibir nueva data

End Sub
cmdAtras:
Código:
Private Sub cmdAtras_Click()

X = Atras 'Asignamos a X el valor de la variable Atras
Winsock1.SendData X ' Enviamos Data
Donde = "Directorios" ' Le decimos donde volcar la data una vez recibida
lstDirectorios.Clear ' Limpiamos lstDirectorio, para recibir nueva data
lblDirRemoto.Caption = Atras ' Mdoficamos lblDirRemoto para mostrar la ruta actual

End Sub
Evento Data_Arrival de Winsock1:
Código:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Winsock1.GetData X, vbString ' Recibimos X,desde el server

Select Case Donde ' Evaluamos su valor

Case "Directorios" ' Si traia el valor directorios, procedemos:


lstDirectorios.AddItem X ' La data que arriba la volcamos en lstDirectorios

Case "Archivos" ' Evaluamos el valor

lstArchivos.AddItem X ' Si su valor era Archivos, la data se vuelca en lstArchivos

End Select ' Cerramos el case


End Sub
lstDirectorios:
Código:
Private Sub lstDirectorios_Click()

Ruta = lstDirectorios.List(lstDirectorios.ListIndex) ' Asignamos el valor del objeto elegido a la variable Ruta
X = Ruta 'Le asignamos el valor de Ruta a X
Winsock1.SendData X ' Enviamos X
Donde = "Directorios" ' Le decimos donde volcar lo recibido
lstDirectorios.Clear ' Limpiamos
lblDirRemoto.Caption = Ruta ' Cambiamos caption

End Sub
_____________________________________


Hasta aquì el cliente, ahora vamos al Servidor:

1 Winsock: Winsock1
1 DirListBox: Directorios
1 FileListBox: Archivos


Còdigo:

Evento Load del Formulario:
Código:
Private Sub Form_Load()

Winsock1.LocalPort = "8080" 'Establecemos el puerto
Winsock1.Listen ' Y lo ponemos a la escucha

End Sub
Evento ConnectionRequest de Winsock1:
Código:
Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)

If Winsock1.State <> sckClosed Then Winsock1.Close 'Evaluamos el estado de Winsock
Winsock1.Accept requestID 'Aceptamos la conexiòn
frmServidor.Caption = "Conectado con: " & Winsock1.RemoteHostIP 'Cambiamos el caption, que nos informa si el server està conectado o no

End Sub
Evento Close de Winsock1:
Código:
Private Sub Winsock1_Close()

frmServidor.Caption = "Servidor" ' Si se cierra el Winsock, cambiamos el caption

End Sub
Evento Error de Winsock1:
Código:
Private Sub Winsock1_Error(ByVal Number As Integer, Description As String, ByVal Scode As Long, ByVal Source As String, ByVal HelpFile As String, ByVal HelpContext As Long, CancelDisplay As Boolean)

Winsock1.Close ' Si hay error, cerramos

End Sub


Código:
Private Sub pausa()

   Dim comenzar
   Dim controlar

   comenzar = Timer

   Do Until controlar >= comenzar + 0.01
       controlar = Timer
       DoEvents
   Loop

End Sub
Evento Data_Arrival de Winsock1:
Código:
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)

Winsock1.GetData X, vbString ' Recibimos la data "X" en forma de String
Select Case X 'Evaluamos su valor

Case "Mostrar Archivos" 'Si dicho valor es Mostrar Archivos:
   
   For i = 0 To Archivos.ListCount - 1 'Cada elemento en el FileListBox ( Archivos )
       X = Archivos.List(i) ' Le asignamos uno x uno a X
       Winsock1.SendData X ' Y lo enviamos de a uno
       Call pausa ' Pausamos entre envio y envio
   Next i 'Seguimos con el proximo elemento en el FileListBox


Case Else ' De no ser el valor "Mostrar Archivos"



Directorios.Path = X ' En X llega el directorio al que nos debemos posicionar
Archivos.Path = X ' Le asignamos el mismo direcotorio a Archivos

For i = 0 To Directorios.ListCount - 1 ' Enviamos los directorios de auno
   X = Directorios.List(i) 'Le asignamos el valor uno a uno
   Winsock1.SendData X 'Enviamos
   Call pausa ' Pausamos
Next i 'Seguimos
   

End Select ' Cerramos el case

End Sub

cjz3ro

bueno creoq para q pueda conectarse tendre q trabar con s :¬¬ :¬¬ :¬¬

ssccaann43 ©

- Miguel Núñez
Todos tenemos derechos a ser estupidos, pero algunos abusan de ese privilegio...
"I like ^TiFa^"

cjz3ro

gracias.. ssccaann43 me sera de mucha ayuda este  ejemplo ;D ;D ;D graciass ;-) ;-)