我写的视频捕捉程序要实现:捕捉到的各帧图像能实时在客户窗口显示。但程序执行总是这样:我一按鼠标捕捉就停止,而且客户区窗口只显示最后一帧图像。
我写了回调函数
LRESULT FAR PASCAL VideoCallbackProc(HWND hWnd, LPVIDEOHDR lpVHdr)

    .............
    
    (((CMainFrame*)AfxGetMainWnd())->GetActiveView())->InvalidateRect(NULL,FALSE);
     return (LRESULT) TRUE;}CView中的Ondraw()函数是
void CVideoViaWebView::OnDraw(CDC* pDC)
{
      ..........
      if(((CMainFrame*)AfxGetMainWnd())->capflag) //capflag为捕获标志
{
            DrawDibDraw(.....);
          }
}请问问题处在哪里,我觉得是不是与重入(reentry)有关,我做了测试,回调函数每采集一帧都会被调用,问题就是回调函数中的invalidate()似乎没有在捕捉过程中执行,所以客户区没有变化。还有就是为什么捕捉过程中任意一按鼠标就停止?
急!!高分奉送