着急啊!大牛们!winform VCap2860sdk的摄像头录像问题
VCap2860sdk中的devwdm.dll已经正确导入
//导入DLL文件
[DllImport("devwdm.dll")]
public static extern int devwdm_InitCard(int nID, IntPtr hwnd, int nWidth, int nHeight);
[DllImport("devwdm.dll")]
public static extern int devwdm_CloseCard(int nID);
[DllImport("devwdm.dll")]
public static extern int devwdm_StartCaptureMp4(int nID, string strFileName, int fbAudio);
[DllImport("devwdm.dll")]
public static extern int devwdm_stopCaptureMp4(int nID);
我现在有两个窗体form1,form2,form1中实现了拍照、录像,form1上有个按钮button,点击button,转向form2。form2也进行拍照、录像,拍照没问题,但是录像(函数:devwdm_StartCaptureMp4)去提示
尝试读取或写入受保护的内存。这通常指示其他内存一损坏?,只要不录像就不会出现错误,调试很久了,一直都没有解决,各位大神,帮帮忙啊!
------解决方案--------------------
你把devwdm_StartCaptureMp4原始C++定义贴出来。。。
------解决方案--------------------是不是被拍照的功能给占用了?
------解决方案--------------------。。求拍照视频源码。。。。。。谢谢了。可以发到我邮箱tj@dianshizhuoyue.com。。。感激不尽。。
------解决方案--------------------是你录像的函数调用出问题了吧,内存对齐?声明的缓存空间不够?内存访问越界?
------解决方案--------------------不好判断
------解决方案--------------------有start就会有end找对应的end方法关闭句柄之类的。问题能解决。
------解决方案--------------------LONG APIENTRY devwdm_StartCaptureMp4(int nID, char* strFileName);
[DllImport("devwdm.dll", CharSet = CharSet.Ansi)]
public static extern LONG devwdm_StartCaptureMp4(int nID, string strFileName);
用这个测试下
------解决方案--------------------http://hi.baidu.com/bjcxv/blog/item/e92c46cbb0ef014af31fe776.html
vc: http://www.codeproject.com/KB/audio-video/vmr9.aspx
------解决方案--------------------这种问题反正是麻烦,要折磨死人