Test Foro de elhacker.net SMF 2.1

Programación => .NET (C#, VB.NET, ASP) => Programación General => Programación Visual Basic => Mensaje iniciado por: elguast en 27 Junio 2008, 14:04 PM

Título: error en codigo
Publicado por: elguast en 27 Junio 2008, 14:04 PM
hola alguien me puede ayudar con este codigo me da error


Dim temp As Long
hwdc = capCreateCaptureWindow("CapWindow", ws_child Or ws_visible, _
0, 0, 320, 240, Picture1.hWnd, 0)
If (hwdc <> 0) Then
webcam = "Si"
temp = DestroyWindow(hwdc)
temp = SendMessage(hwdc, WM_CAP_DRIVER_DISCONNECT, 0&, 0&)
DoEvents
Else
webcam = "No"
End If
Título: Re: error en codigo
Publicado por: Xerok1! en 27 Junio 2008, 14:09 PM
Asimple vista creo que no has definido la funcion capCreateCaptureWindow...

Salu2!
Título: Re: error en codigo
Publicado por: cobein en 27 Junio 2008, 14:25 PM
No creo que sea la mejor forma de hacerlo... pero

Código (vb) [Seleccionar]

Option Explicit

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.dll" Alias "SendMessageA" (ByVal hwnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long
Private Declare Function DestroyWindow Lib "user32.dll" (ByVal hwnd As Long) As Long

Private Const WM_CAP_START As Long = &H400
Private Const WM_CAP_DRIVER_DISCONNECT As Long = (WM_CAP_START + 11)
Private Const WM_CAP_DRIVER_CONNECT As Long = (WM_CAP_START + 10)

Private Sub Form_Load()
    Debug.Print IsWebCamPresent
End Sub

Private Function IsWebCamPresent() As Boolean
    Dim lRet As Long
    lRet = capCreateCaptureWindow(vbNullString, 0, 0, 0, 0, 0, 0, 0)
    If Not lRet = 0 Then
        If SendMessage(lRet, WM_CAP_DRIVER_CONNECT, ByVal 0&, ByVal 0&) Then
            Call SendMessage(lRet, WM_CAP_DRIVER_DISCONNECT, ByVal 0&, ByVal 0&)
            IsWebCamPresent = True
        End If
        Call DestroyWindow(lRet)
    End If
End Function
Título: Re: error en codigo
Publicado por: elguast en 27 Junio 2008, 19:58 PM
muchas gracias por la ayuda