Foros del Web » Programación para mayores de 30 ;) » Programación General » Visual Basic clásico »

enviar datos de una lista con winsock

Estas en el tema de enviar datos de una lista con winsock en el foro de Visual Basic clásico en Foros del Web. hola amigos.. estoy de nuevo por aqui.. tengo una duda estoy tratando de enviar datos de una pc cliente a una pc servidor.. bueno, en ...
  #1 (permalink)  
Antiguo 19/06/2007, 22:01
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
enviar datos de una lista con winsock

hola amigos.. estoy de nuevo por aqui..

tengo una duda

estoy tratando de enviar datos de una pc cliente a una pc servidor..

bueno, en la pc cliente realice un formulario con un listobox que me muestra las ventanas activas por medio de una api, asi ...

Option Explicit

Private Declare Function IsWindowVisible Lib "user32" (ByVal hWnd As Long) As Long


Private Declare Function GetWindowTextLength Lib "user32" Alias "GetWindowTextLengthA" (ByVal hWnd As Long) As Long

Private Declare Function GetWindowText Lib "user32" Alias "GetWindowTextA" (ByVal hWnd As Long, ByVal lpString As String, ByVal cch As Long) As Long
'Esta es la función Api que busca las ventanas y retorna su handle o Hwnd
Private Declare Function GetWindow Lib "user32" (ByVal hWnd As Long, ByVal wFlag As Long) As Long


Private Const GW_HWNDFIRST = 0&
Private Const GW_HWNDNEXT = 2&
Private Const GW_CHILD = 5&


Private Sub Listar()
Dim buf As Long, handle As Long, titulo As String, lenT As Long, ret As Long

List1.Clear
GW_HWNDFIRST

handle = GetWindow(hWnd, GW_HWNDFIRST)



Do While handle <> 0

If IsWindowVisible(handle) Then

lenT = GetWindowTextLength(handle)
'si es el número anterior es mayor a 0
If lenT > 0 Then
titulo = String$(lenT, 0)


ret = GetWindowText(handle, titulo, lenT + 1)
titulo$ = Left$(titulo, ret)

List1.AddItem titulo$
End If
End If
GW_HWNDNEXT
handle = GetWindow(handle, GW_HWNDNEXT)
Loop
End Sub

Private Sub Command1_Click()
'llamo a la función Listar
Listar
End Sub

Y LO TRATO DE ENVIAR ASI, PERO ME GENERA EL ERRO DE QUE ESPERABA UNA FUNCION O UNA VARIABLE... ALGUIEN SABE COMO PUEDO MANDAR EL CONTENIDO DEL LISTBOX A LA PC SERVIDOR??



Private Sub cmdEnviar_Click()
Dim Enviar As String


Enviar = Listar
Winsock1.SendData Enviar

End sub

claro todo esta bien conectado con la pc servidor, puerto, y demas... ya que si puedo enviar textos escritos..
bueno, espero me puedan ayudar con esta duda
  #2 (permalink)  
Antiguo 25/06/2007, 09:16
Avatar de Kruzado  
Fecha de Ingreso: marzo-2007
Mensajes: 307
Antigüedad: 17 años, 2 meses
Puntos: 17
Re: enviar datos de una lista con winsock

el boton lo tienes configurado como enviar=listar cierto?
pero listar es un sub (procedimiento), entonces no devuelve ningun valor
para poder hacer esa asignacion listar debiera ser una funcion. Las funciones devuelven valores, por eso te dice ke hace falta una funcion o una variable entiendes?

si kieres ke enviar tome algun valor del proceso debieras hacer algo como....

Private Function Listar() as string
...
...
bla bla
bla bla

listar=handle 'por ejemplo.... tu tienes que ver donde guardas los datos que necesitas

end function

espero se entienda
  #3 (permalink)  
Antiguo 26/06/2007, 21:19
 
Fecha de Ingreso: marzo-2007
Mensajes: 53
Antigüedad: 17 años, 1 mes
Puntos: 0
Re: enviar datos de una lista con winsock

si, intentare hacer la funcion, gracias......
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 13:12.