Foro de elhacker.net

Programación => Programación Visual Basic => Mensaje iniciado por: ranslsad en 8 Agosto 2006, 15:12 pm



Título: Web Cam Cliente Servidor...Hola
Publicado por: ranslsad en 8 Agosto 2006, 15:12 pm
Hola amigos, ya que no se puede ver la web cam de msn, toy haciendo un programa...
pero no se como se envian imagenes de un picture box a otro :S
aqui les dejo el codigo de lo que llevo echo de mi cliente y servidor:

Cliente:
Código:
Private Declare Function capCreateCaptureWindow Lib "avicap32.dll" Alias "capCreateCaptureWindowA" (ByVal lpszWindowName As String, ByVal dwStyle As Long, ByVal X As Long, ByVal Y As Long, ByVal nWidth As Long, ByVal nHeight As Long, ByVal hwndParent As Long, ByVal nID As Long) As Long
Private Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, lParam As Any) As Long
Private Declare Function DestroyWindow Lib "user32" (ByVal hndw As Long) As Boolean

Private Const CONNECT As Long = 1034
Private Const DISCONNECT As Long = 1035
Private Const GET_FRAME As Long = 1084
Private Const COPY As Long = 1054

Private hWndCap As Long
Private Sub Form_Load()
Timer1.Interval = 1
    hWndCap = capCreateCaptureWindow("WebcamCapture", 0, 0, 0, 160, 120, Me.hwnd, 0)
    DoEvents
    SendMessage hWndCap, CONNECT, 0, 0
    Timer1.Enabled = True
    Winsock1.RemoteHost = txtip.Text
End Sub

Private Sub Form_Unload(Cancel As Integer)
    DestroyWindow hWndCap
End Sub

Private Sub Timer1_Timer()
    SendMessage hWndCap, GET_FRAME, 0, 0
    SendMessage hWndCap, COPY, 0, 0
    Picture1.Picture = Clipboard.GetData
    Clipboard.Clear
End Sub

Servidor:
Código:
Private Sub Command1_Click()
Winsock1.Listen
End Sub

Private Sub Command2_Click()
Winsock1.Close
End Sub

Private Sub Command3_Click()
Call SavePicture(Picture1.Image, "\image.bmp")
End Sub

Private Sub Form_Load()

End Sub

Private Sub Text1_Change()
List1.AddItem Text1.Text
End Sub

Private Sub Winsock1_Connect()
Text1.Text = Winsock1.RemoteHost
End Sub

Private Sub Winsock1_ConnectionRequest(ByVal requestID As Long)
  If w2.State <> sckClosed Then _
    w2.Close
   
  w2.Accept requestID
End Sub

Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
Dim Imagenes As String
Winsock1.GetData Imagenes
Picture1.Picture Data
End Sub

Como ven en el servidor aun no e echo el SendData
y en la linea "Picture1.Picture Data" del servidor me da error :S

Bueno desde ya Gracias ;)

Salu2

Ranslsad


Título: Re: Web Cam Cliente Servidor...Hola
Publicado por: sch3m4 en 8 Agosto 2006, 16:05 pm
tienes que guardar la imagen en un fichero, y enviar ese fichero


Título: Re: Web Cam Cliente Servidor...Hola
Publicado por: sircid en 8 Agosto 2006, 16:46 pm
Los ficheros se guardan en formato .bmp y tiene alrededor de 100kb de peso. Por lo cuál en el tema de webcam remota tendrás que comprimir las imágenes en JPG ya que supongo que le querrás poner una velocidad de 1imagen/sec. Con el peso de 100kb por imagen puede irte 1imagen/10sec, con una línea convencional ( 1 mega ).

Temas interesantes:
transferencia de archivos x winsock (http://foro.elhacker.net/index.php/topic,132911.0.html)
Visual Basic 6: Escritorio remoto (Cliente - Servidor) (http://foro.elhacker.net/index.php/topic,129802.0.html)


Título: Re: Web Cam Cliente Servidor...Hola
Publicado por: Robokop en 8 Agosto 2006, 19:33 pm
Citar
Los ficheros se guardan en formato .bmp y tiene alrededor de 100kb de peso
en BMP yo diria un poco mas , si capturas la screen y dejas en BMP la imagen queda en 2 megas.
Busca informacion sobre el modulo cjpeg para comprimir imagenes , puedes dejarlas hasta en 4 kb .


Título: Re: Web Cam Cliente Servidor...Hola
Publicado por: ranslsad en 8 Agosto 2006, 23:40 pm
Muchas gracias por toda la informacion brindada!!!!
ahora buscare y mirare y cualqueir duda la posteare aqui ;)

Salu2

Ranslsad


Título: Re: Web Cam Cliente Servidor...Hola
Publicado por: sircid en 9 Agosto 2006, 05:27 am
Citar
Los ficheros se guardan en formato .bmp y tiene alrededor de 100kb de peso
en BMP yo diria un poco mas , si capturas la screen y dejas en BMP la imagen queda en 2 megas.
Busca informacion sobre el modulo cjpeg para comprimir imagenes , puedes dejarlas hasta en 4 kb .

Olvide poner un parantesis (depende de la webcam) : PPPPP!