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
Asimple vista creo que no has definido la funcion capCreateCaptureWindow...
Salu2!
No creo que sea la mejor forma de hacerlo... pero
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
muchas gracias por la ayuda