+ Rispondi al Thread
Visualizzazione dei risultati da 1 a 4 su 4

Discussione: Visual basic e webcam

  1. #1
    manuel non è in linea Novello
    Luogo
    Italy
    Post
    4
    Inanzitutto volevo salutare tutti i membri del forum e mi auguro che possa iniziare tra di noi una sana collaborazione.

    Vi pongo subito il mio problema.
    Ho creato una anagrafica per registrare i membri di un circolo e fin qui nessun problema.
    Ora però dovrei inserire nella scheda di ognuno una foto
    che io stesso farò con una semplice webcam.
    Ora però volevo usare una routine di visual basic che mi facesse interagire con questa webcam
    senza dover ogni volta salvarmi la foto con un'altro proramma(es:Netmeeting)e poi doverlo salvare nel mio database.
    qualcuno mi saprebbe dire come potrei fare?
    Vi ringrazio in anticipo e vi saluto a presto Manuel

  2. #2
    deside non è in linea Novello
    Luogo
    Italy
    Post
    1
    Ciao Manuel</font>

    anche io ho lo stesso problema però con due webcam.
    Questo è il codice per una sola web cam


    crea un modulo e inserisci il seguente codice :

    Option Explicit

    Public Const WS_CHILD As Long = &H40000000
    Public Const WS_VISIBLE As Long = &H10000000

    Public 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

    Public Const WM_USER As Long = &H400
    Public Const WM_CAP_START As Long = WM_USER

    Public Const WM_CAP_DRIVER_CONNECT As Long = WM_CAP_START + 10
    Public Const WM_CAP_DRIVER_DISCONNECT As Long = WM_CAP_START + 11
    Public Const WM_CAP_SET_PREVIEW As Long = WM_CAP_START + 50
    Public Const WM_CAP_SET_PREVIEWRATE As Long = WM_CAP_START + 52
    Public Const WM_CAP_DLG_VIDEOFORMAT As Long = WM_CAP_START + 41
    Public Const WM_CAP_FILE_SAVEDIB As Long = WM_CAP_START + 25

    Public Declare Function SendMessage Lib "user32" Alias "SendMessageA" (ByVal hWnd As Long, ByVal wMsg As Long, ByVal wParam As Long, ByRef lParam As Any) As Long

    Declare Function DestroyWindow Lib "user32" (ByVal hWnd As Long) As Long

    crea un Form e inserisci il seguente codice :

    Option Explicit

    Private hCap As Long
    Private Sub cmdImpostazioniVideo_Click()
    'Visualizza la finestra di dialogo per la modifica delle impostazioni video.
    Call SendMessage(hCap, WM_CAP_DLG_VIDEOFORMAT, 0&, 0&)
    End Sub
    Private Sub cmdScatta_Click()
    On Error GoTo GestoreErrori
    Dim NomeFile As String

    'Interrompe momentaneamente l'anteprima, così da visualizzare l'immagine che verrà
    'salvata.
    Call SendMessage(hCap, WM_CAP_SET_PREVIEW, CLng(False), 0&)

    With dlgSalva
    .Flags = cdlOFNPathMustExist Or cdlOFNOverwritePrompt
    .ShowSave
    NomeFile = .FileName
    End With

    'Salva l'immagine correntemente visualizzata.
    Call SendMessage(hCap, WM_CAP_FILE_SAVEDIB, 0&, ByVal CStr(NomeFile))

    Call SendMessage(hCap, WM_CAP_SET_PREVIEW, CLng(True), 0&)
    Exit Sub

    GestoreErrori:
    If Err.Number = 32755 Then Exit Sub 'Pulsante Annulla.
    Call SendMessage(hCap, WM_CAP_SET_PREVIEW, CLng(True), 0&)
    End Sub
    Private Sub Form_Load()
    hCap = capCreateCaptureWindow("Cattura immagini", WS_CHILD Or WS_VISIBLE, 0, 0, picCam.Width, picCam.Height, picCam.hWnd, 0)
    If hCap &lt;&gt; 0 Then
    Call SendMessage(hCap, WM_CAP_DRIVER_CONNECT, 0, 0)
    Call SendMessage(hCap, WM_CAP_SET_PREVIEWRATE, 66, 0&)
    'Attiva l'anteprima.
    Call SendMessage(hCap, WM_CAP_SET_PREVIEW, CLng(True), 0&)
    End If
    End Sub
    Private Sub Form_QueryUnload(Cancel As Integer, UnloadMode As Integer)
    On Error Resume Next
    Call SendMessage(hCap, WM_CAP_DRIVER_DISCONNECT, 0, 0)
    If hCap &lt;&gt; 0 Then DestroyWindow (hCap)

    Kill App.Path & "\Temp.bmp"
    End Sub



    sul form metti una picture "picCam"
    un button "cmdScatta"
    un button "cmdImpostazioniVideo"
    e un commondialog "dlgSalva"

    Hai risolto ciao.




    [img]smileys/smiley14.gif[/img]

  3. #3
    manuel non è in linea Novello
    Luogo
    Italy
    Post
    4
    Ti ringrazio per il consiglio sono riuscito a terminare
    questo programma spero di poter contraccambiare presto ciao

  4. #4
    Bix Bicio non è in linea Novello
    Luogo
    Italy
    Post
    6
    Ciao a tutti... curiosità: siete poi riusciti a collegare più webcam?

    [img]smileys/smiley2.gif[/img] Fabrizio

+ Rispondi al Thread

Discussioni simili

  1. Visual basic e microsoft access
    Da attila1984 nel forum Visual Basic 6
    Risposte: 9
    Ultimo Post: 16-02-2009, 10:18
  2. Libro Visual Basic .Net 2005
    Da Gossip nel forum Altri linguaggi, metodi e strumenti
    Risposte: 5
    Ultimo Post: 04-09-2006, 12:39
  3. DLL in Fortran e Visual Basic
    Da knulp nel forum Visual Basic 6
    Risposte: 7
    Ultimo Post: 09-02-2006, 12:50
  4. Visual basic webcam audio messenger msnp9
    Da Sergio nel forum Visual Basic 6
    Risposte: 2
    Ultimo Post: 15-03-2004, 17:47

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi