Hallo Commi.
Ich Programmiere derzeit ein
Steuerungs Programm, für das Video
ist eine einfache webCam drinne aber
wie kann ich die an Steuern?
den Code den ich bisher habe ist der:
aber es wird nur ein Schwartzes bild angezeigt
Könnt ihr mir helfen?
Danke im vorraus
Ich Programmiere derzeit ein
Steuerungs Programm, für das Video
ist eine einfache webCam drinne aber
wie kann ich die an Steuern?
den Code den ich bisher habe ist der:
VB.NET-Quellcode
- Public Class Form1
- Dim videoHandle1 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
- 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 = 530, Optional ByRef nHeight As Short = 360, 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
- Public Function captureWindow(ByRef nCaptureHandle As IntPtr) As System.Drawing.Image
- My.Computer.Clipboard.Clear()
- SendMessage(nCaptureHandle, WM_CAP_EDIT_COPY, 0, 0)
- Return My.Computer.Clipboard.GetImage
- End Function
- Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
- videoHandle1 = Me.CreateCaptureWindow(PictureBox1.Handle, 0, 0, 530, 360, 0)
- End Sub
- End Class
aber es wird nur ein Schwartzes bild angezeigt
Könnt ihr mir helfen?
Danke im vorraus