Пример #1
0
        ///   <summary>
        ///   开始显示图像
        ///   </summary>
        public void Start()
        {
            if (bWorkStart)
            {
                return;
            }

            bWorkStart = true;
            byte[] lpszName = new byte[100];

            hWndC = CameraApi.capCreateCaptureWindowA(lpszName, WS_CHILD | WS_VISIBLE, mLeft, mTop, mWidth, mHeight, mControlPtr, 0);

            if (hWndC.ToInt32() != 0)
            {
                CameraApi.SendMessage(hWndC, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_CALLBACK_ERROR, 0, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_CALLBACK_STATUSA, 0, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_DRIVER_CONNECT, 0, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_SCALE, 1, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_PREVIEWRATE, 66, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_OVERLAY, 1, 0);
                CameraApi.SendMessage(hWndC, WM_CAP_SET_PREVIEW, 1, 0);
            }
            return;
        }
Пример #2
0
        public void Start(int i)///这是我新添的一个方法,想用来调用另外一个摄像头,
        {
            //if (bWorkStart_1)
            // return;

            bWorkStart_1 = true;
            byte[] lpszName_1 = new byte[100];

            hWndC_1 = CameraApi.capCreateCaptureWindowB(lpszName_1, WS_CHILD | WS_VISIBLE, mLeft, mTop, mWidth, mHeight, mControlPtr_1, 0);

            if (hWndC_1.ToInt32() != 0)
            {
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_CALLBACK_VIDEOSTREAM, 0, 1);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_CALLBACK_ERROR, 0, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_CALLBACK_STATUSA, 0, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_DRIVER_CONNECT, 1, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_SCALE, 1, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_PREVIEWRATE, 66, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_OVERLAY, 1, 0);
                CameraApi.SendMessage(hWndC_1, WM_CAP_SET_PREVIEW, 1, 0);
            }
            return;
        }
Пример #3
0
 ///   <summary>
 ///   停止显示
 ///   </summary>
 public void Stop()
 {
     CameraApi.SendMessage(hWndC, WM_CAP_DRIVER_DISCONNECT, 0, 0);
     bWorkStart = false;
 }