给你个函数,看看了
testavi() 
{
// TODO: Add your command handler code here
PAVIFILE pfile;
AVIFILEINFO  pfi;
PAVISTREAM  pavi;
AVISTREAMINFO psi;
PGETFRAME pgf;
BITMAPINFOHEADER bmih;
BYTE *lpbuff;
long length; AVIFileInit(); 
AVIFileOpen(&pfile,"test.AVI",OF_READ,NULL);
AVIFileInfo(pfile,&pfi,sizeof(AVIFILEINFO));
AVIFileGetStream(pfile,&pavi,streamtypeVIDEO,0);          
AVIStreamInfo(pavi,&psi,sizeof(AVISTREAMINFO));
length=AVIStreamLength(pavi); memset(&bmih,0,sizeof(BITMAPINFOHEADER));
bmih.biBitCount=24;
bmih.biSize = sizeof(BITMAPINFOHEADER);
bmih.biWidth = pfi.dwWidth;
bmih.biHeight = pfi.dwHeight;
bmih.biPlanes =1;
bmih.biCompression =BI_RGB;
bmih.biXPelsPerMeter = 3780;
bmih.biYPelsPerMeter = 3780; CClientDC dc(this);
pgf=AVIStreamGetFrameOpen(pavi,&bmih);
for(int i=0;i<length;i++)
{
lpbuff=(BYTE *)AVIStreamGetFrame(pgf,i);
StretchDIBits(dc.m_hDC,0,0,bmih.biWidth,bmih.biHeight,0,0,
bmih.biWidth,bmih.biHeight,lpbuff+sizeof(BITMAPINFOHEADER),(BITMAPINFO *)&bmih,DIB_RGB_COLORS,SRCCOPY);
}

AVIStreamGetFrameClose(pgf);
AVIFileRelease(pfile);
AVIFileExit();
}