vb@rchiv
VB Classic
VB.NET
ADO.NET
VBA
C#
Mails senden, abrufen und decodieren - ganz easy ;-)  
 vb@rchiv Quick-Search: Suche startenErweiterte Suche starten   Impressum  | Datenschutz  | vb@rchiv CD Vol.6  | Shop Copyright ©2000-2025
 
zurück

 Sie sind aktuell nicht angemeldet.Funktionen: Einloggen  |  Neu registrieren  |  Suchen

Visual-Basic Einsteiger
Re: Probleme mit der Webcam Steuerung 
Autor: edmached
Datum: 24.08.07 11:04

Mein Code sieht foldenermaßen aus:
die Form
Option Explicit
Dim g_Video_Handle As Long
Private Sub Form_Load()
    Dim iport As Integer
    Connect
    'iport = 10010   'Port definieren
    'Picture1.Visible = False
    'Livebild starten und im Fenster anzeien
    g_Video_Handle = CreateCaptureWindow(VideoBild.hwnd)
 End Sub
Private Sub Connect()
    Dim iport As Integer
   iport = 10010   'Port definieren
    'Horchen starten
    'Winsock1.Protocol = sckTCPProtocol
    'Winsock1.LocalIP = "127.0.0.1"
    Winsock1.Close
    Winsock1.LocalPort = iport
    Winsock1.Listen
End Sub
Private Sub Winsock1_Close()
    Connect
End Sub
Private Sub Form_Unload(Cancel As Integer)
    'Verbindung zur Kamera schließen
    Disconnect (g_Video_Handle)
    'Das Abhören wird beendet
    Winsock1.Close
End Sub
Private Sub Save_Click()
    Dim sFilename As String
    'Dateinamen definieren
    sFilename = "Testbild"
    sFilename = AddExtension(sFilename)
    MakeAbsPath (sFilename)
    'Foto schießen und in Picture1 zwischenspeichern
    CapturePicture g_Video_Handle, Picture1
    'Foto von Picture1 holen und speichern
    Save_JPG Picture1, sFilename
End Sub
Private Sub Beenden_Click()
    Unload Me
End Sub
Private Sub Timer1_Timer()
    Dim sMessage As String
    'lblStatus gibt den Status wieder
    'lblStatus.Caption = Winsock1.State
    Select Case Winsock1.State
        Case 0
            sMessage = "Socket ist geschlossen"
        Case 1
            sMessage = "Socket ist geöffnet"
        Case 2
            sMessage = "Der Socket ist empfangsbereit"
        Case 3
            sMessage = "Die Verbindung wird aufgebaut"
        Case 4
            sMessage = "Der Remote-Host-Name wird in eine IP-Adresse" & _
              "umgewandelt"
        Case 5
            sMessage = "Der Remote-Host-Name wurde in eine IP-Adresse" & _
              "umgewandelt"
        Case 6
            sMessage = "Der Socket verbindet sich zu dem Remote"
        Case 7
            sMessage = "Der Socket hat sich zu dem Remote verbunden"
        Case 8
            sMessage = "Der Remote hat die Verbindung getrennt"
        Case 9
            sMessage = "Ein Fehler ist aufgetreten"
    End Select
    lblStatus.Caption = sMessage
End Sub
'Reaktion des Winsock bei Verbindungsanfrage
Private Sub Winsock1_ConnectionRequest(ByVal requestid As Long)
    Label2.Caption = requestid
    'Das Abhören wird beendet
    Winsock1.Close
    'Die Verbindung wird akzeptiert
    Winsock1.Accept requestid
End Sub
'Reaktion des Winsock, wenn Daten empfangen werden
Private Sub Winsock1_DataArrival(ByVal bytesTotal As Long)
    Dim sData As String
    'ankommende Daten in sData speichern
    Winsock1.GetData sData
    'sData interpretieren
    InterpretData sData
End Sub
'Daten interpretieren
Private Sub InterpretData(ByVal sData As String)
    Dim sFilename As String
    Dim sCommand_Shot, sCommand_Save As String
    'Codenummer für Befehle definieren
    sCommand_Shot = "1"
    sCommand_Save = "2"
    'Entscheidung, welcher Befehl versendet wurde...
    '...und entsprechende Reaktion
    If Left$(sData, 1) = sCommand_Shot Then
        FotoSchiessen
    ElseIf Left$(sData, 1) = sCommand_Save Then
        sFilename = GetFilename(sData)
        sFilename = AddExtension(sFilename)
        sFilename = MakeAbsPath(sFilename)
        FotoSpeichern (sFilename)
    End If
End Sub
'absolute Pfadangabe vor den Dateinamen schreiben
Private Function MakeAbsPath(ByRef sFilename As String)
    Dim sFile As String
    Dim sPath As String
    sPath = App.Path '?
    If Mid$(sFilename, 2, 1) <> ":" Then
        sFile = sPath
    End If
    If Right$(sFile, 1) <> "\" Then
        sFile = sFile & "\"
    End If
    sFilename = sFile & sFilename
    MakeAbsPath = sFilename
End Function
'Dateiendung anhängen
Private Function AddExtension(ByRef sFilename As String)
    Dim iLen As Integer
    Dim sExt As String
    iLen = Len(sFilename)
    sExt = ".jpg"
    If Mid$(sFilename, iLen - 3, 1) <> "." Then
        AddExtension = sFilename & sExt
    End If
    If Mid$(sFilename, iLen - 3, 1) = "." Then
        AddExtension = sFilename
    End If
End Function
'Dateinamen aus sData extrahieren
Private Function GetFilename(ByVal sData As String)
    Dim sFilename As String
    Dim iLen As Integer
    iLen = Len(sData)
    sFilename = Right$(sData, iLen - 2)
    GetFilename = sFilename
End Function
Private Sub FotoSpeichern(ByVal sFilename As String)
    Save_JPG Picture1, sFilename
    'SavePicture Picture1, sFilename
End Sub
Private Sub FotoSchiessen()
    CapturePicture g_Video_Handle, Picture1
End Sub
alle Nachrichten anzeigenGesamtübersicht  |  Zum Thema  |  Suchen

 ThemaViews  AutorDatum
Probleme mit der Webcam Steuerung932edmached24.08.07 10:54
Re: Probleme mit der Webcam Steuerung622Lord_Duke24.08.07 11:00
Re: Probleme mit der Webcam Steuerung706edmached24.08.07 11:08
Re: Probleme mit der Webcam Steuerung609edmached24.08.07 11:03
Re: Probleme mit der Webcam Steuerung661edmached24.08.07 11:04
Re: Probleme mit der Webcam Steuerung607Lord_Duke24.08.07 11:27
Re: Probleme mit der Webcam Steuerung619edmached24.08.07 11:43

Sie sind nicht angemeldet!
Um auf diesen Beitrag zu antworten oder neue Beiträge schreiben zu können, müssen Sie sich zunächst anmelden.

Einloggen  |  Neu registrieren

Funktionen:  Zum Thema  |  GesamtübersichtSuchen 

nach obenzurück
 
   

Copyright ©2000-2025 vb@rchiv Dieter Otter
Alle Rechte vorbehalten.
Microsoft, Windows und Visual Basic sind entweder eingetragene Marken oder Marken der Microsoft Corporation in den USA und/oder anderen Ländern. Weitere auf dieser Homepage aufgeführten Produkt- und Firmennamen können geschützte Marken ihrer jeweiligen Inhaber sein.

Diese Seiten wurden optimiert für eine Bildschirmauflösung von mind. 1280x1024 Pixel