capDriverConnect导致win7下某些摄像头失败

	int i=0;
	BOOL Connected;
	while (!(Connected=capDriverConnect(m_hCapWnd,0))&& i++<10);

	if(Connected)
	{
		// 连接第0 号驱动器
		m_bInit=TRUE;
		
		//得到驱动器的性能
		capDriverGetCaps(m_hCapWnd, &m_CapDrvCap,sizeof(CAPDRIVERCAPS));
		
		if(m_CapDrvCap.fCaptureInitialized)
		{// 如果初始化成功
			capGetStatus(m_hCapWnd, &m_CapStatus,sizeof(m_CapStatus)); // 得到驱动器状态
			capPreviewRate(m_hCapWnd,30); // 设置预示帧频
			capPreview(m_hCapWnd,TRUE); // 设置预示方式
		}
		else{// 初始化未成功
			AfxMessageBox("视频捕捉卡初始化失败!");
			AfxGetMainWnd()->PostMessage(WM_CLOSE);
		}
	}
	else{// 未能连接到驱动器
		AfxMessageBox("与视频捕捉卡连接失败!");
		//	AfxGetMainWnd()->PostMessage(WM_CLOSE);
	}


代码作如上修改。原因,有些摄像头在win7中一次连接不上,奇怪的是有些却可以一次连上。(均为无驱型的)

你可能感兴趣的:(capDriverConnect导致win7下某些摄像头失败)