在网上看到的:
利用VFW中的capEditCopy( )宏函数将帧图像缓冲区中的图像数据拷贝到剪贴板上时,并没有压缩图像数据,因此可以不采用回调机制而直接利用capGrabFrameNoStop()捕获一帧图像,然后将数据拷贝拷贝到剪贴板上,再通过DIB(Device Independent Bitmap)操作获取内存中图像数据首地址,进行后续的图像数据处理。具体的代码片段如下://获得capEditCopy( )拷贝到剪贴板中的图像数据句柄,通过CF_DIB参数指定数据
HANDLE hData;
::GlobalFree ((HGLOBAL)hData);
hData=(HANDLE)CopyHandle(::GetClipboardData(CF_DIB));
编译时显示CopyHandle没定义,请问怎么解决,另外,可不可以帮我解释一下上面的代码,

解决方案 »

  1.   

    还是建议使用回调函数。并且现在VFW已经被废弃了。应该使用DirectShow.
      

  2.   

    先谢了,
    主要是做毕业设计,听说VFW简单些,想随便做点交差
      

  3.   

    我也是做毕业设计的啊,我也用vfw和调用api来做的,也比较简单啊,但是我这里也些问题也不明白啊,想请知道的告诉一下啊,谢谢啊!我想请教的是为什么在录制视频时,明明都录制了很久的时间,可是在打开录制生成的.avi格式的视频中却只有一两秒的视频播放时间,有的时候就长一点,但是我录制时间的时间都远比他播放的时间长啊,录象的时间明显和播放时间不符合啊??(如录了一分钟但播放时文件只能播放几秒钟而已!),有谁知道这是怎么回事?还有一个问题就是有的时候当我重新录制视频时,打开新的生成的.avi文件里见到的录制的画面好象和上次的一样,但是我录的时候明明都没有做这些动作啊,是不是他录制的信息还是上次的?这是怎么回事啊?
    知道的请解释一下,有什么解决方法的也告诉我一下!谢谢!!!
    还有就是谁知道有什么比较好用的给vc修饰界面的工具没啊?我装了一个BCGCBPro,但是我不懂怎么用,如果有那位有的话请告诉一下或者发给我啊,(如果是中文版的那最好)我的email:[email protected] ;万分感谢大家啊!!
      

  4.   

    使用DirectShow做视频捕捉也不太难啊,我没看书,在网上找了个例子看看,两天就搞定一个捕捉\回放的DLL,供VB调用.