Liebe vb-paradise Communitiy,
Ich bin neu hier und bin gerade dabei ein webcam tool zu programmieren. Ich benutze derzeitig diesen Code:
Das Problem hierbei ist das das Bild der Picturbox1 schwarz bleibt.
In Windows 7 läuft das ganze, aber nicht in Windows 8.1.
An der Webcam liegt es nicht da ich schon 3 verschiedene ausprobiert habe.
Ich habe das tool auch schon an 2 windows 8.1 rechnern ausprobiert und wie erwähnt an einem windows 7 rechner.
Mit der Kamera App von Windows 8.1 geht es interesanter Weise.
Ich bin euch sehr dankbar wenn mir jemand helfen kann.
Bin am verzweifeln![;(](https://www.vb-paradise.de/wcf/images/smilies/crying.png)
Ich bin neu hier und bin gerade dabei ein webcam tool zu programmieren. Ich benutze derzeitig diesen Code:
Quellcode
- Imports System.IO
- Public Class Form3
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- 'Video starten'
- videoHandle = Me.CreateCaptureWindow(PictureBox1.Handle)
- 'video ende
- End Sub
- Dim videoHandle As IntPtr
- Declare Auto Function SendMessage Lib "user32" (ByVal hwnd As IntPtr, ByVal wMsg As Integer, ByVal wParam As Integer, ByVal lParam As Integer) As Integer
- Declare Auto Function capCreateCaptureWindow Lib "avicap32.dll" (ByVal lpszWindowName As String, ByVal dwStyle As Integer, ByVal x As Short, ByVal y As Integer, ByVal nWidth As Short, ByVal nHeight As Short, ByVal hWndParent As IntPtr, ByVal nID As Byte) As IntPtr
- Const EM_LINEFROMCHAR As Integer = &HC9
- Const EM_LINEINDEX As Integer = &HBB
- Const WS_CHILD As Integer = &H40000000
- Const WS_VISIBLE As Integer = &H10000000
- ' Für die optimale Bildqualität müsst ihr hier ein wenig rumspielen mit den zahlen...
- Const WM_USER As Short = &H400S
- Const WM_CAP_START As Short = &H400S
- Const WM_CAP_EDIT_COPY As Short = WM_CAP_START + 30
- Const WM_CAP_DRIVER_CONNECT As Short = WM_CAP_START + 10
- Const WM_CAP_SET_PREVIEWRATE As Short = WM_CAP_START + 52
- Const WM_CAP_SET_OVERLAY As Short = WM_CAP_START + 51
- Const WM_CAP_SET_PREVIEW As Short = WM_CAP_START + 50
- Const WM_CAP_DRIVER_DISCONNECT As Short = WM_CAP_START + 11
- Function CreateCaptureWindow(ByRef hWndParent As IntPtr, Optional ByRef x As Short = 0, Optional ByRef y As Short = 0, Optional ByRef nWidth As Short = 640, Optional ByRef nHeight As Short = 420, Optional ByRef nCameraID As Integer = 0) As IntPtr
- Dim previewHandle As IntPtr
- previewHandle = capCreateCaptureWindow("Video", WS_CHILD + WS_VISIBLE, x, y, nWidth, nHeight, hWndParent, 1)
- SendMessage(previewHandle, WM_CAP_DRIVER_CONNECT, nCameraID, 0)
- SendMessage(previewHandle, WM_CAP_SET_PREVIEWRATE, 30, 0)
- SendMessage(previewHandle, WM_CAP_SET_OVERLAY, 1, 0)
- SendMessage(previewHandle, WM_CAP_SET_PREVIEW, 1, 0)
- Return previewHandle
- End Function
- Sub Disconnect(ByRef nCaptureHandle As IntPtr, Optional ByRef nCameraID As Integer = 0)
- SendMessage(nCaptureHandle, WM_CAP_DRIVER_DISCONNECT, nCameraID, 0)
- End Sub
- Sub Form1_FormClosing() Handles Me.FormClosing
- Me.Disconnect(videoHandle)
- End Sub
- Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Button1.Click
- Me.Close()
- End Sub
- End Class
Das Problem hierbei ist das das Bild der Picturbox1 schwarz bleibt.
In Windows 7 läuft das ganze, aber nicht in Windows 8.1.
An der Webcam liegt es nicht da ich schon 3 verschiedene ausprobiert habe.
Ich habe das tool auch schon an 2 windows 8.1 rechnern ausprobiert und wie erwähnt an einem windows 7 rechner.
Mit der Kamera App von Windows 8.1 geht es interesanter Weise.
Ich bin euch sehr dankbar wenn mir jemand helfen kann.
Bin am verzweifeln
![;(](https://www.vb-paradise.de/wcf/images/smilies/crying.png)
Dieser Beitrag wurde bereits 1 mal editiert, zuletzt von „iDehide“ ()