急救,小弟用avistreamgetframe(),drawdibdraw(),image.fromHbitmap()三个函数的不到桢图,代码如下
lhDC = CreateDCAsNull("DISPLAY", 0&, 0&, 0&)
hNewDc = CreateCompatibleDC(lhDC)
'//create compatible bitmap
'lhDC = CreateDCAsNull("DISPLAY", 0&, 0&, 0&)
hNewBm = CreateCompatibleBitmap(lhDC, Width, Height)
RetVal = DeleteDC(lhDC)
'//Select new bitmap in new DC
hOldBm = SelectObject(hNewDc, hNewBm)
'//Draw frame into DC
lpbi = AVIStreamGetFrame(m_pGF, framecounter)‘m_PGF为avigetframeopen得到
Dim isdibopen = DrawDibOpen
DrawDibDraw(isdibopen, lhDC, x, y, _
lWidth, lHeight, lpbi, 0&, _
0, 0, -1, -1, 0)、
frame_show.Image = Image.FromHbitmap(hNewBm )
frame_show.Image.Save("e:/bmps/" & index & ".bmp")
得到的是全黑的图像,函数各处执行均正确,请高手们帮忙看下怎么回事??